Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
64 changes: 48 additions & 16 deletions .github/scripts/bot-mentor-assignment.js
Original file line number Diff line number Diff line change
Expand Up @@ -105,25 +105,57 @@ async function isNewContributor(github, owner, repo, login) {
}

function buildComment({ mentee, mentor, owner, repo }) {
const repoUrl = `https://github.com/${owner}/${repo}`;

return `${COMMENT_MARKER}
👋 Hi @${mentee}, welcome to the Hiero Python SDK community!

You've been assigned this Good First Issue, and today’s on-call mentor from ${MENTOR_TEAM_ALIAS} is @${mentor}. They're here to help you land a great first contribution.

**How to get started**
- Review the issue description and any linked docs
- Share updates early and ask @${mentor} anything right here
- Keep the feedback loop short so we can support you quickly

Need more backup? ${SUPPORT_TEAM_ALIAS} is also on standby to cheer you on.

const repoUrl = owner && repo ? `https://github.com/${owner}/${repo}` : "https://github.com/hiero-ledger/hiero-sdk-python";

return `${COMMENT_MARKER}👋 Hi @${mentee}, welcome to the Hiero Python SDK community!
You've been assigned this **Good First Issue**. Your on-call mentor today from ${MENTOR_TEAM_ALIAS} is **@${mentor}**, and the **Good First Issue Support Team** is **${SUPPORT_TEAM_ALIAS}**.
We’re here to help you get your first PR merged successfully 🚀

---
### Step 1: Read the task
- Open the issue description, carefully read the requirements and workflow
- Read any linked documentation
- Make sure you understand the expected outcome
If anything is unclear, ask your mentor **before** writing code.

---
### Step 2: Tell us your plan (in this thread)
Reply here with:
- What you think the task is
- What you plan to change to solve the issue requirement and no more
- Any questions you have
This means we can guide you early on, helping you to have a more stress free experience

---
### Step 3: Get the right kind of help
Finishing your first PR can be really hard. We are here to help you - please ask us!

🛠 **Good First Issue Support Team (${SUPPORT_TEAM_ALIAS})**
Use them for **workflow and GitHub issues**, such as:
- Failing CI checks
- Commit signing problems
- Merge conflicts
- Git/GitHub errors
They can also jump on a call if needed.

🐍 **Your Mentor (@${mentor})**
Use your mentor for **Python and code guidance**, such as:
- Which files to edit
- How to structure your solution
- Docstring and code style questions
- Making sure your PR meets the issue requirements

💬 **Discord (for fast help)**
Guide: [Join the Python SDK Discord](https://github.com/hiero-ledger/hiero-sdk-python/blob/main/docs/discord.md)
Use Discord when you need **immediate answers** from the community, like:
- What docs to read
- How to unblock yourself quickly
- Clarifying next steps in real time

---
**Mentor:** @${mentor}
**Mentee:** @${mentee}

If you're enjoying the SDK, consider ⭐️ [starring the repository](${repoUrl}) so it's easy to find later.

Happy building!
— Python SDK Team`;
}
Expand Down
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,7 @@ This changelog is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.
- Add GitHub Actions script and workflow for automatic spam list updates.
- Added technical docstrings and hardening (set -euo pipefail) to the pr-check-test-files.sh script (#1336)
- Added prompt for coderabbit to review `Query` and it's sub-classes.
- Updated the mentor assignment bot welcome message to be more structured. ([#1487](https://github.com/hiero-ledger/hiero-sdk-python/issues/1487))
- Add StakingInfo class ([1364](https://github.com/hiero-ledger/hiero-sdk-python/issues/1364))
- Added a visible confirmation comment when a user unassigns themselves from an issue (#1506)
- Added first-class support for EVM address aliases in `AccountId`, including parsing, serialization, Mirror Node population helpers.
Expand Down