Skip to content

Refactor: beginner, intermediate, advanced labels#2170

Merged
exploreriii merged 3 commits into
hiero-ledger:mainfrom
DeathGun44:refactor/skill-labels
May 2, 2026
Merged

Refactor: beginner, intermediate, advanced labels#2170
exploreriii merged 3 commits into
hiero-ledger:mainfrom
DeathGun44:refactor/skill-labels

Conversation

@DeathGun44

@DeathGun44 DeathGun44 commented Apr 18, 2026

Copy link
Copy Markdown
Contributor

Description:

Centralize and rename difficulty labels from beginner/intermediate/advanced to skill: beginner/skill: intermediate/skill: advanced so future label renames only require a single-file change.

  • Add shared labels module (.github/scripts/shared/labels.js) as single source of truth
  • Add unit tests for the shared module (18 tests, all passing)
  • Update 4 JS scripts and 1 shell script to import from the shared module
  • Update 3 workflow YAMLs to use the new label names in if: conditions and env: blocks
  • Update 3 issue templates to apply the new labels on creation
  • Add one-time migration script (migrate-skill-labels.sh) for existing open issues
  • Add isSafeLabel validator for labels containing colons/spaces (keeps isSafeSearchToken strict for owner/repo/username)
  • Use documented gh api array syntax (labels[]=) for GraphQL variable binding

Related issue(s):

Fixes #2131

Notes for reviewer:

Tested on my fork — labels, templates, and workflow triggers all work as expected: https://github.com/DeathGun44/hiero-sdk-python/issues

Checklist

  • Documented (Code comments, README, etc.)
  • Tested (unit, integration, etc.)

@DeathGun44
DeathGun44 requested review from a team as code owners April 18, 2026 02:49
@DeathGun44
DeathGun44 marked this pull request as draft April 18, 2026 02:49
@codacy-production

codacy-production Bot commented Apr 18, 2026

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 33 complexity

Metric Results
Complexity 33

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

@coderabbitai

coderabbitai Bot commented Apr 18, 2026

Copy link
Copy Markdown
Contributor

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

Walkthrough

Issue templates, workflows, and automation scripts were updated to use namespaced skill labels (skill: beginner, skill: intermediate, skill: advanced). A new shared labels module centralizes label constants and validation; multiple scripts/workflows now consume these constants and URL-encode quoted label values where used.

Changes

Cohort / File(s) Summary
Issue templates
.github/ISSUE_TEMPLATE/02-beginner-issue.yml, .github/ISSUE_TEMPLATE/03-intermediate-issue.yml, .github/ISSUE_TEMPLATE/04-advanced-issue.yml
Replaced labels: values from beginner/intermediate/advanced to skill: beginner/skill: intermediate/skill: advanced; updated helper GitHub search URLs to quote and URL‑encode colon-containing labels.
Shared labels module & tests
.github/scripts/shared/labels.js, .github/scripts/shared/labels.test.js
Added centralized exports for difficulty labels with env-var overrides (GOOD_FIRST_ISSUE_LABEL, BEGINNER_LABEL, INTERMEDIATE_LABEL, ADVANCED_LABEL, DIFFICULTY_LABELS) and isSafeLabel(); added unit tests validating defaults, overrides, trimming, ordering, and safety checks.
Workflows
.github/workflows/bot-advanced-check.yml, .github/workflows/bot-coderabbit-plan-trigger.yml, .github/workflows/bot-intermediate-assignment.yml
Tightened label-condition checks to require exact skill: ... values; added environment variables (e.g., INTERMEDIATE_LABEL, BEGINNER_LABEL) for scripts.
Shell scripts
.github/scripts/bot-advanced-check.sh
Introduced INTERMEDIATE_LABEL env var usage; moved GraphQL labels into variable/array, updated query to accept label variables, and URL-encode label slugs in constructed links.
Automation scripts — label consumption & search updates
.github/scripts/bot-beginner-assign-on-comment.js, .github/scripts/bot-intermediate-assignment.js, .github/scripts/bot-next-issue-recommendation.js, .github/scripts/bot-gfi-assign-on-comment.js, .github/scripts/bot-gfi-candidate-notification.js, .github/scripts/cron-admin-update-spam-list.js
Replaced hardcoded label literals with shared constants; made label checks case-insensitive and null-safe; switched search/GraphQL queries to interpolate and URL-encode quoted label strings; added upfront label validation (isSafeLabel) in some scripts.
Plan trigger script
.github/scripts/coderabbit_plan_trigger.js
Switched to using shared DIFFICULTY_LABELS, excluded GOOD_FIRST_ISSUE_LABEL where required, normalized labels to lowercase, and replaced array includes checks with Set.has for performant, case-insensitive matching.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 44.44% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title directly summarizes the main change: refactoring beginner, intermediate, and advanced labels across the codebase.
Description check ✅ Passed The description clearly outlines the centralization of difficulty labels, implementation of shared modules, test coverage, and updates to scripts and workflows.
Linked Issues check ✅ Passed The PR comprehensively addresses issue #2131's objectives by renaming all labels to 'skill:' prefixed versions, centralizing definitions in a shared module, and updating all relevant scripts and workflows.
Out of Scope Changes check ✅ Passed All changes directly support the label refactoring objective. Modifications to scripts, workflows, and templates are scoped to label name updates and centralization.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

📋 Issue Planner

Built with CodeRabbit's Coding Plans for faster development and fewer bugs.

View plan used: #2131

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 5

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
.github/scripts/bot-beginner-assign-on-comment.js (1)

258-266: 🛠️ Refactor suggestion | 🟠 Major

Build the issue-search URL from BEGINNER_LABEL too.

Line 265 uses the shared constant in the visible text but still hardcodes skill: beginner in the query URL, so env overrides or future label renames will send users to the wrong search.

♻️ Proposed fix
       if (issue.assignees && issue.assignees.length > 0) {
         try{
           const currentAssignee = issue.assignees[0]?.login ?? "another contributor";
+          const beginnerIssuesUrl = `https://github.com/${repo.owner.login}/${repo.name}/issues?q=${encodeURIComponent(
+            `is:issue is:open label:"${BEGINNER_LABEL}" no:assignee`
+          )}`;
           await github.rest.issues.createComment({
             owner: repo.owner.login,
             repo: repo.name,
             issue_number: issue.number,
-            body: `👋 Hi @${commenter}, thanks for your interest! This issue is already assigned to @${currentAssignee}, but we'd love your help on another one. You can find more "${BEGINNER_LABEL}" issues [here](https://github.com/${repo.owner.login}/${repo.name}/issues?q=is%3Aissue+is%3Aopen+label%3A%22skill%3A+beginner%22+no%3Aassignee).`,
+            body: `👋 Hi @${commenter}, thanks for your interest! This issue is already assigned to @${currentAssignee}, but we'd love your help on another one. You can find more "${BEGINNER_LABEL}" issues [here](${beginnerIssuesUrl}).`,
           });

As per coding guidelines, “Use top-level constants for configuration — avoid hardcoded values scattered through the script.”


ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: aa403e7a-5373-4ccb-8e0c-d6e7efc12f27

📥 Commits

Reviewing files that changed from the base of the PR and between 15032e1 and 6308eda.

📒 Files selected for processing (14)
  • .github/ISSUE_TEMPLATE/02-beginner-issue.yml
  • .github/ISSUE_TEMPLATE/03-intermediate-issue.yml
  • .github/ISSUE_TEMPLATE/04-advanced-issue.yml
  • .github/scripts/bot-advanced-check.sh
  • .github/scripts/bot-beginner-assign-on-comment.js
  • .github/scripts/bot-intermediate-assignment.js
  • .github/scripts/bot-next-issue-recommendation.js
  • .github/scripts/coderabbit_plan_trigger.js
  • .github/scripts/migrate-skill-labels.sh
  • .github/scripts/shared/labels.js
  • .github/scripts/shared/labels.test.js
  • .github/workflows/bot-advanced-check.yml
  • .github/workflows/bot-coderabbit-plan-trigger.yml
  • .github/workflows/bot-intermediate-assignment.yml

Comment thread .github/scripts/bot-advanced-check.sh
Comment thread .github/scripts/bot-beginner-assign-on-comment.js Outdated
Comment thread .github/scripts/bot-next-issue-recommendation.js
Comment thread .github/scripts/migrate-skill-labels.sh Outdated
Comment thread .github/workflows/bot-intermediate-assignment.yml Outdated
@DeathGun44
DeathGun44 force-pushed the refactor/skill-labels branch from 6308eda to 3ef0b1e Compare April 18, 2026 03:04
@DeathGun44 DeathGun44 changed the title Refactor beginner, intermediate, advanced labels Refactor: beginner, intermediate, advanced labels Apr 18, 2026
@DeathGun44
DeathGun44 marked this pull request as ready for review April 18, 2026 03:57

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4


ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: fe749e33-e3a0-479c-8601-7643b9e99c84

📥 Commits

Reviewing files that changed from the base of the PR and between 6308eda and 3ef0b1e.

📒 Files selected for processing (14)
  • .github/ISSUE_TEMPLATE/02-beginner-issue.yml
  • .github/ISSUE_TEMPLATE/03-intermediate-issue.yml
  • .github/ISSUE_TEMPLATE/04-advanced-issue.yml
  • .github/scripts/bot-advanced-check.sh
  • .github/scripts/bot-beginner-assign-on-comment.js
  • .github/scripts/bot-intermediate-assignment.js
  • .github/scripts/bot-next-issue-recommendation.js
  • .github/scripts/coderabbit_plan_trigger.js
  • .github/scripts/migrate-skill-labels.sh
  • .github/scripts/shared/labels.js
  • .github/scripts/shared/labels.test.js
  • .github/workflows/bot-advanced-check.yml
  • .github/workflows/bot-coderabbit-plan-trigger.yml
  • .github/workflows/bot-intermediate-assignment.yml

Comment thread .github/scripts/bot-advanced-check.sh
Comment thread .github/scripts/migrate-skill-labels.sh Outdated
Comment thread .github/scripts/shared/labels.test.js Outdated
Comment thread .github/workflows/bot-coderabbit-plan-trigger.yml Outdated
@exploreriii exploreriii added reviewer: junior committer request review from junior committers with triage permissions step: 1st 1st stage of the review approval process labels Apr 21, 2026
Comment thread .github/scripts/shared/labels.js Outdated
Comment thread .github/scripts/coderabbit_plan_trigger.js Outdated
Comment thread .github/scripts/migrate-skill-labels.sh Outdated
@exploreriii
exploreriii marked this pull request as draft April 21, 2026 17:29
@exploreriii exploreriii removed step: 1st 1st stage of the review approval process reviewer: junior committer request review from junior committers with triage permissions labels Apr 21, 2026
@aceppaluni

Copy link
Copy Markdown
Contributor

@DeathGun44 happy to review again once changes are addressed, thank you!

@DeathGun44
DeathGun44 force-pushed the refactor/skill-labels branch from 1f5a091 to d61d4a9 Compare April 22, 2026 07:14
@DeathGun44
DeathGun44 marked this pull request as ready for review April 22, 2026 07:16

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
.github/scripts/bot-next-issue-recommendation.js (1)

169-177: ⚠️ Potential issue | 🟡 Minor

Use GOOD_FIRST_ISSUE_LABEL constant for the fallback search query instead of hardcoded label strings.

Line 175 hardcodes '(label:"good first issue" OR label:"skill: good first issue")', which bypasses the centralized label configuration imported at the top of the file. The GOOD_FIRST_ISSUE_LABEL constant (default: "Good First Issue") should be used here to respect environment variable overrides and maintain consistency. The "skill: good first issue" variant is not defined anywhere in the codebase and should not be included.


ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 5a3deffb-e969-42ac-9a4a-ba331d9d0adb

📥 Commits

Reviewing files that changed from the base of the PR and between 3ef0b1e and d61d4a9.

📒 Files selected for processing (8)
  • .github/scripts/bot-gfi-assign-on-comment.js
  • .github/scripts/bot-gfi-candidate-notification.js
  • .github/scripts/bot-next-issue-recommendation.js
  • .github/scripts/coderabbit_plan_trigger.js
  • .github/scripts/cron-admin-update-spam-list.js
  • .github/scripts/shared/labels.js
  • .github/scripts/shared/labels.test.js
  • .github/workflows/bot-coderabbit-plan-trigger.yml

Comment thread .github/scripts/bot-gfi-assign-on-comment.js Outdated
Comment thread .github/scripts/bot-next-issue-recommendation.js
Comment thread .github/scripts/cron-admin-update-spam-list.js
@DeathGun44
DeathGun44 force-pushed the refactor/skill-labels branch 2 times, most recently from a172bf9 to 6ad75bc Compare April 22, 2026 09:18

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

♻️ Duplicate comments (1)
.github/scripts/shared/labels.test.js (1)

134-177: 🧹 Nitpick | 🔵 Trivial

Make env cleanup failure-safe.

Move label env cleanup into a shared helper plus afterEach; deleting env vars after assertions can leak overrides when a test fails.

Proposed refactor
-const { describe, it, beforeEach } = require('node:test');
+const { describe, it, beforeEach, afterEach } = require('node:test');
 const assert = require('node:assert/strict');
 
+function clearLabelEnv() {
+  delete process.env.GOOD_FIRST_ISSUE_LABEL;
+  delete process.env.GOOD_FIRST_ISSUE_CANDIDATE_LABEL;
+  delete process.env.BEGINNER_LABEL;
+  delete process.env.INTERMEDIATE_LABEL;
+  delete process.env.ADVANCED_LABEL;
+}
+
 // Helper: force a fresh require() by clearing the module cache.
 // labels.js reads process.env at load time, so we must reload to test overrides.
 function freshRequire() {
@@
 describe('labels.js — environment variable overrides', () => {
+  beforeEach(clearLabelEnv);
+  afterEach(clearLabelEnv);
+
   it('overrides GOOD_FIRST_ISSUE_LABEL from env', () => {
     process.env.GOOD_FIRST_ISSUE_LABEL = 'custom: gfi';
     const labels = freshRequire();
     assert.equal(labels.GOOD_FIRST_ISSUE_LABEL, 'custom: gfi');
     assert.ok(labels.DIFFICULTY_LABELS.includes('custom: gfi'));
-    delete process.env.GOOD_FIRST_ISSUE_LABEL;
   });

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: d6336e45-250b-4c51-a07e-32d03c42db1f

📥 Commits

Reviewing files that changed from the base of the PR and between d61d4a9 and a172bf9.

📒 Files selected for processing (8)
  • .github/scripts/bot-gfi-assign-on-comment.js
  • .github/scripts/bot-gfi-candidate-notification.js
  • .github/scripts/bot-next-issue-recommendation.js
  • .github/scripts/coderabbit_plan_trigger.js
  • .github/scripts/cron-admin-update-spam-list.js
  • .github/scripts/shared/labels.js
  • .github/scripts/shared/labels.test.js
  • .github/workflows/bot-coderabbit-plan-trigger.yml

Comment thread .github/scripts/bot-next-issue-recommendation.js Outdated
Comment thread .github/scripts/shared/labels.js
@DeathGun44
DeathGun44 force-pushed the refactor/skill-labels branch from 6ad75bc to 0195c7c Compare April 22, 2026 09:27
@github-actions

Copy link
Copy Markdown

Hello, this is the OfficeHourBot.

This is a reminder that the Hiero Python SDK Office Hours are scheduled in approximately 4 hours (14:00 UTC).

This session provides an opportunity to ask questions regarding this Pull Request.

Details:

Disclaimer: This is an automated reminder. Please verify the schedule here for any changes.

From,
The Python SDK Team

@aceppaluni
aceppaluni requested a review from exploreriii April 22, 2026 16:17
@exploreriii exploreriii added the reviewer: committer request review help from a committer label Apr 23, 2026
@DeathGun44
DeathGun44 force-pushed the refactor/skill-labels branch from 0195c7c to 11230e5 Compare April 29, 2026 04:27
@DeathGun44

Copy link
Copy Markdown
Contributor Author

Please resolve your merge conflcits @DeathGun44

Done ,ready for re-review!

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

♻️ Duplicate comments (2)
.github/workflows/bot-coderabbit-plan-trigger.yml (1)

18-22: 🧹 Nitpick | 🔵 Trivial

Keep the workflow gate dumb; the difficulty-label allowlist is duplicated again.

This hardcodes the same label list that .github/scripts/coderabbit_plan_trigger.js now derives from .github/scripts/shared/labels.js. The next rename can silently stop the workflow from starting even though the script is already updated. Prefer gating only on event shape/open state here and letting the script own the label allowlist.

Suggested simplification
     if: >
       github.event.action == 'labeled' &&
-      github.event.issue.state == 'open' &&
-      contains(fromJson('["skill: beginner","skill: intermediate","skill: advanced"]'), github.event.label.name)
+      github.event.issue.state == 'open'

As per coding guidelines, “Non-trivial logic belongs in dedicated scripts under .github/scripts/, keeping the workflow YAML focused on orchestration.”

.github/scripts/bot-advanced-check.sh (1)

15-15: ⚠️ Potential issue | 🟡 Minor

Validate INTERMEDIATE_LABEL once at configuration time.

This value now flows into the GraphQL labels[] filter, the generated label URL, and the user-facing comment body. If it is empty or malformed, the script fails in harder-to-diagnose ways later. Validate it right after the default is applied.

Suggested guard
 REQUIRED_INTERMEDIATE_COUNT=1
 INTERMEDIATE_LABEL="${INTERMEDIATE_LABEL:-skill: intermediate}"
+if [[ -z "${INTERMEDIATE_LABEL//[[:space:]]/}" ]] || [[ ! "$INTERMEDIATE_LABEL" =~ ^[A-Za-z0-9][A-Za-z0-9:._/\ -]*$ ]]; then
+  log "ERROR: INTERMEDIATE_LABEL contains unsupported characters"
+  exit 1
+fi

As per coding guidelines, “Environment variables should be passed from the YAML, validated early, and defensively quoted.”


ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 9bc39008-1b26-4a5b-8ac4-664b9e83167f

📥 Commits

Reviewing files that changed from the base of the PR and between a172bf9 and 11230e5.

📒 Files selected for processing (16)
  • .github/ISSUE_TEMPLATE/02-beginner-issue.yml
  • .github/ISSUE_TEMPLATE/03-intermediate-issue.yml
  • .github/ISSUE_TEMPLATE/04-advanced-issue.yml
  • .github/scripts/bot-advanced-check.sh
  • .github/scripts/bot-beginner-assign-on-comment.js
  • .github/scripts/bot-gfi-assign-on-comment.js
  • .github/scripts/bot-gfi-candidate-notification.js
  • .github/scripts/bot-intermediate-assignment.js
  • .github/scripts/bot-next-issue-recommendation.js
  • .github/scripts/coderabbit_plan_trigger.js
  • .github/scripts/cron-admin-update-spam-list.js
  • .github/scripts/shared/labels.js
  • .github/scripts/shared/labels.test.js
  • .github/workflows/bot-advanced-check.yml
  • .github/workflows/bot-coderabbit-plan-trigger.yml
  • .github/workflows/bot-intermediate-assignment.yml

@cheese-cakee

Copy link
Copy Markdown
Member

Approved. Assumed prerequisite: labels will be renamed in GitHub UI (beginner/intermediate/advanced -> skill: beginner/intermediate/advanced) before rollout.

@parvninama parvninama left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 👍
Just one thing — please update (rebase/merge) your branch with the latest base branch so we’re up to date.

@darshit2308 darshit2308 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great refactor to centralize these labels!

I was auditing the workflow triggers and noticed a critical blocker: it looks like .github/workflows/request-triage-review.yml was accidentally left out of this PR.

If we see the line 17 of that file, the workflow is still gating on the old beginner label:

if: ${{ contains(github.event.pull_request.labels.*.name, 'Good First Issue') || contains(github.event.pull_request.labels..name, 'beginner') }}

Since the issue templates in this PR now apply skill: beginner, the triage workflow will silently stop triggering for new beginner PRs once this merges.

Could you update that condition to check for skill: beginner (or both, during the rollout transition)? Everything else looks really solid, well done !

@DeathGun44
DeathGun44 force-pushed the refactor/skill-labels branch from 11230e5 to 8b07af9 Compare May 1, 2026 11:08
@DeathGun44

Copy link
Copy Markdown
Contributor Author

thank you everyone for the reviews!! @exploreriii please let me know if any more changes required!

@exploreriii exploreriii added step: 2nd second stage of the review approval process reviewer: write requires a review with write permissions and removed step: 1st 1st stage of the review approval process reviewer: junior committer request review from junior committers with triage permissions reviewer: committer request review help from a committer labels May 1, 2026
@github-actions github-actions Bot added skill: intermediate requires some knowledge of the codebase with some defined steps to implement or examples lang: javascript Uses Javascript programming language notes: extra care requires extra attention to detail or requirements scope: CI/CD involves continuous integration or delivery labels May 1, 2026
@aceppaluni

Copy link
Copy Markdown
Contributor

@DeathGun44

When you have a moment, please update your branch. Thank you!

@DeathGun44

Copy link
Copy Markdown
Contributor Author

@aceppaluni Done!

@exploreriii
exploreriii merged commit 26a41eb into hiero-ledger:main May 2, 2026
13 checks passed
@manishdait manishdait added this to the v0.2.6 milestone May 4, 2026
NssGourav pushed a commit to NssGourav/hiero-sdk-python that referenced this pull request May 14, 2026
Signed-off-by: DeathGun44 <krishnamewara841@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lang: javascript Uses Javascript programming language notes: extra care requires extra attention to detail or requirements reviewer: write requires a review with write permissions scope: CI/CD involves continuous integration or delivery skill: intermediate requires some knowledge of the codebase with some defined steps to implement or examples step: 2nd second stage of the review approval process

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Refactor beginner, intermediate, advanced labels

7 participants