Skip to content

[Beginner]: Ensure no duplicate linkbot posts #1463

@exploreriii

Description

@exploreriii

🐥 Beginner Friendly

This issue is intended for contributors who have previously completed a Good First Issue in Hiero and are at a beginner level.
We recognize that gaining confidence and building skills are equally important steps in the open-source contributor journey.
The purpose of this issue—and others listed under Find a beginner issue—is to provide a supportive, low-pressure environment where you can learn, practice, and grow your contribution skills with confidence.

👾 Description of the issue

Linkbot is currently posting over and over on an issue that does not have a linked issue to their PR.

.github/scripts/bot-pr-missing-linked-issue.js <--- logic
.github/workflows/bot-pr-missing-linked-issue.yml <-- trigger

We should ensure it never posts duplicate posts

💡 Proposed Solution

Ensure it never posts duplicate posts in an issue

For example, avoid this:
#1462

👩‍💻 Implementation Steps

To do that, add a new variable called LINKBOT_MARKER and make it hidden html so it doesn't render to the user

Pass that linkbot marker in the comment.

Check for the presence of the linkbot marker before deciding whether to post a new comment.
if there is a linkbot marker in the issue thread, its already posted, so can skip posting again.

We have several examples of this technique in e.g.
.github/scripts/bot-mentor-assignment.js

✅ Acceptance Criteria

To be able to merge a pull request for this issue, we need:

  • Assignment: You must be assigned to the issue, comment: /assign in the issue to get assigned see guide
  • Changelog Entry: Correct changelog entry see guide
  • Signed commits: commits must be DCO and GPG key signed see guide
  • All Tests Pass: our workflow checks like unit and integration tests must pass
  • Issue is Solved: The implementation fully addresses the issue requirements as described above
  • No Further Changes are Made: Code review feedback has been addressed and no further changes are requested

📋 Step-by-Step Contribution Guide

  • Assignment: You must be assigned to the issue, comment: /assign in the issue to get assigned see guide
  • Fork, Branch and Work on the issue: Create a copy of the repository, create a branch for the issue and solve the problem. For instructions, please read our Contributing guide file. Further help can be found at Set-up Training and Workflow Training.
  • DCO and GPG key sign each commit : each commit must be -s and -S signed. An explanation on how to do this is at Signing Guide
  • Add a Changelog Entry : your pull request will require a changelog. Read Changelog Entry Guide to learn how.
  • Push and Create a Pull Request : Once your issue is resolved, and your commits are signed, and you have a changelog entry, push your changes and create a pull request. Detailed instructions can be found at Submit PR Training, part of Workflow Training.
  • You did it 🎉: A maintainer or committer will review your pull request and provide feedback. If approved, we will merge the fix in the main branch. Thanks for being part of the Hiero community as an open-source contributor ❤️

IMPORTANT You will ONLY be assigned to the issue if you comment: /assign
IMPORTANT Your pull request CANNOT BE MERGED until you add a changelog entry AND sign your commits each with git commit -S -s -m "chore: your commit message" with a GPG key setup.

🤔 Additional Information

For more help, we have extensive documentation:

Additionally, we invite you to join our community on our Discord server.

We also invite you to attend each Wednesday, 2pm UTC our Python SDK Office Hour and Community Calls. The Python SDK Office hour is for hands-on-help and the Community Call for general community discussion.

You can also ask for help in a comment below!

Metadata

Metadata

Assignees

Labels

beginnerAchievable by a fairly new comer that has already completed a couple of good first issuesgithub_actionsPull requests that update Github Actions code.intermediaterequires some knowledge of the codebase with some defined steps to implement or examplesjavascriptUses Javascript programming language

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions