Skip to content

[Intermediate]: Adjust .github/scripts/bot-assignment-check.sh to guard against users with spam PRsΒ #1245

@exploreriii

Description

@exploreriii

🧩 Intermediate Contributors

This issue is intended for contributors who already have some familiarity with the
Hiero Python SDK codebase and contribution workflow.

You should feel comfortable:

  • navigating existing source code and examples
  • understanding SDK concepts without step-by-step guidance
  • following the standard PR workflow without additional onboarding

If this is your very first contribution to the project, we recommend starting with a few
Good First Issues before working on this one.

🐞 Problem Description

Currently,
.github/scripts/bot-assignment-check.sh
allows regular users to have a maximum of 2 issues assigned.

This can be misused if some users want to create spam.

πŸ’‘ Expected Solution

We can adjust .github/scripts/bot-assignment-check.sh
To check for users with a historical closed (not merged) pull request with a label of 'spam'. This might not be feasible as we have a lot of closed PRs.
Alternatively, if needed, we can check for a username with a spam list.

When the user requesting to be assigned is identified as historically created spam, their maximum assignment count should be 1 and ideally: scope to issues reduced to only to issues labelled as good first issues.

The list might be best as then we can remove the user from the spam list if they follow the documented workflow and create high-quality pull requests.

🧠 Implementation Notes

  • create a spam list by github username
  • limit total assignments to 1 at a time, only for 'Good First Issue' labelled

Keep other logic the same as is possible - the bot works very well for most cases.

βœ… Acceptance Criteria

To merge this issue, the pull request must:

  • Fully address the problem described above
  • Follow existing project conventions and patterns
  • Include tests or example updates where appropriate
  • Pass all CI checks
  • Include a valid changelog entry
  • Use DCO and GPG-signed commits

πŸ“š Additional Context or Resources

Metadata

Metadata

Assignees

Labels

github_actionsPull requests that update Github Actions code.intermediaterequires some knowledge of the codebase with some defined steps to implement or examples

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions