Skip to content

Conversation

@exploreriii
Copy link
Contributor

Description:
This creates guidelines for beginner issues

Thus also updates good first issues and good first issue candidate guidelines and templates

Related issue(s):

Fixes #1324

Notes for reviewer:
Tested here
exploreriii#86
exploreriii#85

@codecov
Copy link

codecov bot commented Jan 3, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

Impacted file tree graph

@@           Coverage Diff           @@
##             main    #1325   +/-   ##
=======================================
  Coverage   92.29%   92.29%           
=======================================
  Files         139      139           
  Lines        8515     8515           
=======================================
  Hits         7859     7859           
  Misses        656      656           
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@exploreriii exploreriii marked this pull request as ready for review January 3, 2026 15:40
@coderabbitai
Copy link

coderabbitai bot commented Jan 3, 2026

📝 Walkthrough

Walkthrough

Reorganized and refactored Good First Issue (GFI) and GFI-Candidate guidance, introduced a new Beginner Issues category, removed the legacy GFI doc, updated issue templates to reference new maintainer guidelines, and standardized assignment wording to “get assigned by commenting /assign”.

Changes

Cohort / File(s) Summary
GitHub issue templates
\.github/ISSUE_TEMPLATE/01_good_first_issue_candidate.yml, \.github/ISSUE_TEMPLATE/04_good_first_issue.yml
Rewrote guidance and examples for GFI/GFIC, changed assignment phrasing to “get assigned by commenting `/assign`”, updated links to new maintainer guideline paths, and adjusted checklists/formatting.
Removed legacy GFI doc
docs/GFI/GFI-Guidelines.md
Deleted legacy Good First Issue guidelines (content consolidated into docs/maintainers/).
Cross-reference updates
docs/GFI/GFI-Management.md
Updated referenced link to point to docs/maintainers/good_first_issues_guidelines.md.
New Beginner Issues guidance
docs/maintainers/beginner-issues-guidelines.md
Added Beginner Issues doc: scope, allowed/disallowed categories, maintainer guidance, examples, and resources.
Reworked GFIC guidance
docs/maintainers/good_first_issue_candidate_guidelines.md
Reframed candidate label as a holding state, tightened negative criteria, replaced narrative workflows with a concise promotion checklist/process, and reorganized content.
Reframed GFI guidelines
docs/maintainers/good_first_issues_guidelines.md
Reframed from “what is NOT” to explicit “what IS” a GFI, added machine-checkable criteria, clearer category definitions, updated maintainer expectations, examples, and checklists.
Changelog
CHANGELOG.md
Added Unreleased entry: "Beginner issue documentation and updated GFI and GFIC templates and documentation".

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Pre-merge checks

✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title 'docs: create beginner issue guidelines' directly matches the main changeset objective: adding new beginner issue documentation while updating related GFI and GFIC guidelines.
Description check ✅ Passed The description accurately describes the changeset: creating guidelines for beginner issues and updating good first issues and candidate guidelines, with specific issue reference and testing notes.
Linked Issues check ✅ Passed The PR fulfills the core acceptance criteria from #1324: it creates beginner issue guidelines, refactors GFI content, updates documentation, includes changelog entries, and maintains structural coherence across templates and guidelines.
Out of Scope Changes check ✅ Passed All changes are within scope of #1324: new beginner guidelines document, updates to GFI/GFIC guidelines and templates, documentation references, and changelog entry are all required for the beginner issue framework.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

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.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 9

Caution

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

⚠️ Outside diff range comments (1)
.github/ISSUE_TEMPLATE/01_good_first_issue_candidate.yml (1)

19-19: Broken link: Incorrect path to guidelines document.

The referenced path docs/maintainers/good_first_issue_guidelines.md is incorrect. Based on the files in this PR, the correct path should be docs/maintainers/good_first_issues_guidelines.md (note the 's' in "issues").

🔎 Proposed fix
-        > docs/maintainers/good_first_issue_guidelines.md
+        > docs/maintainers/good_first_issues_guidelines.md
📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between ec903c7 and 7ff7a9a.

📒 Files selected for processing (8)
  • .github/ISSUE_TEMPLATE/01_good_first_issue_candidate.yml
  • .github/ISSUE_TEMPLATE/04_good_first_issue.yml
  • CHANGELOG.md
  • docs/GFI/GFI-Guidelines.md
  • docs/GFI/GFI-Management.md
  • docs/maintainers/beginner-issues-guidelines.md
  • docs/maintainers/good_first_issue_candidate_guidelines.md
  • docs/maintainers/good_first_issues_guidelines.md
💤 Files with no reviewable changes (1)
  • docs/GFI/GFI-Guidelines.md
🧰 Additional context used
📓 Path-based instructions (1)
docs/**

⚙️ CodeRabbit configuration file

docs/**: You are reviewing documentation for the Hiero Python SDK. These pages serve both SDK users and SDK developers.

Priority 1 - Correctness (code, commands, links)

  1. Verify code snippets conceptually run and match the current SDK API.
  2. Check shell commands and workflow steps against actual project tooling.
  3. Validate URLs and cross-references; flag broken or misleading links.

Priority 2 - Clarity and completeness

  1. Ensure each page states its purpose and expected outcome early.
  2. Prefer concrete, step-wise explanations over vague descriptions.
  3. Highlight missing prerequisites that would block a reader.
  4. For larger gaps, suggest filing a follow-up issue instead of blocking.

Priority 3 - Consistency and navigation

  1. Encourage consistent terminology with the SDK and examples.
  2. Check headings form a logical reading path.
  3. Confirm each page makes clear which audience it serves.

PHILOSOPHY

  • Treat docs as work-in-progress: optimize for correctness and clarity over perfection.
  • Keep feedback concise, action-oriented, and focused on reader success.
  • Do not request large-scale restructures unless current structure blocks understanding.

AVOID

  • Avoid lint-style feedback on Markdown formatting or minor wording.
  • Avoid proposing new conventions without clear benefit.
  • Avoid turning every high-level gap into a blocker.

Files:

  • docs/GFI/GFI-Management.md
  • docs/maintainers/good_first_issue_candidate_guidelines.md
  • docs/maintainers/beginner-issues-guidelines.md
  • docs/maintainers/good_first_issues_guidelines.md
🪛 LanguageTool
docs/maintainers/beginner-issues-guidelines.md

[grammar] ~36-~36: Use a hyphen to join words.
Context: ...workflow - Basic Git - At least beginner level programming - Reading and navigati...

(QB_NEW_EN_HYPHEN)

docs/maintainers/good_first_issues_guidelines.md

[style] ~43-~43: As an alternative to the over-used intensifier ‘very’, consider replacing this phrase.
Context: ...utors Importantly, they have: - ✅ A **very clear, explicitly described, or provided solu...

(EN_WEAK_ADJECTIVE)


[style] ~56-~56: As an alternative to the over-used intensifier ‘very’, consider replacing this phrase.
Context: ... Allowed (rare, explicit cases only) - Very small, explicitly described edits to existing...

(EN_WEAK_ADJECTIVE)


[grammar] ~89-~89: Ensure spelling is correct
Context: ...instruction-driven*. #### Allowed - Remaing variable names when new names are provi...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)

🪛 markdownlint-cli2 (0.18.1)
docs/maintainers/good_first_issue_candidate_guidelines.md

58-58: Link text should be descriptive

(MD059, descriptive-link-text)


73-73: Link text should be descriptive

(MD059, descriptive-link-text)


125-125: Link text should be descriptive

(MD059, descriptive-link-text)

docs/maintainers/beginner-issues-guidelines.md

134-134: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Above

(MD022, blanks-around-headings)


134-134: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Below

(MD022, blanks-around-headings)


135-135: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Above

(MD022, blanks-around-headings)


139-139: Blank line inside blockquote

(MD028, no-blanks-blockquote)


147-147: Heading levels should only increment by one level at a time
Expected: h3; Actual: h4

(MD001, heading-increment)

docs/maintainers/good_first_issues_guidelines.md

11-11: Link fragments should be valid

(MD051, link-fragments)


13-13: Link fragments should be valid

(MD051, link-fragments)


14-14: Link fragments should be valid

(MD051, link-fragments)


49-49: Headings should be surrounded by blank lines
Expected: 1; Actual: 0; Above

(MD022, blanks-around-headings)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Codacy Static Code Analysis
🔇 Additional comments (4)
docs/GFI/GFI-Management.md (1)

158-158: Verify consistency of GFI document path references.

Line 158 correctly updates the reference to docs/maintainers/good_first_issues_guidelines.md. However, line 149 references GFI-frequency.md without a path prefix. Confirm whether this file has also been moved to the new structure or remains in its original location.

docs/maintainers/beginner-issues-guidelines.md (3)

1-40: Purpose and structure are clear; audience expectations are well-defined.

The document correctly positions Beginner Issues as the intermediate step between Good First Issues and advanced work. The purpose section (lines 24–38) clearly states the intended audience and their assumed baseline knowledge, which helps maintainers apply the label consistently.


41-133: Categories and examples effectively define scope and prevent scope creep.

The five categories (Source Changes, Typing, Documentation, Examples, Tests) with concrete Allowed/Not Allowed examples provide clear, actionable guidance for maintainers. Boundaries like "no cross-cutting changes," "no new test suites," and "no large documentation workflows" are well-reasoned and help maintain the "beginner" scope.


160-166: Verify that all resource links resolve correctly.

The Additional Resources section references several internal and external links. Confirm:

  • docs/maintainers/good_first_issues_guidelines.md exists (per PR description, it should)
  • ../../CONTRIBUTING.md and other relative paths resolve from docs/maintainers/
  • External Zoom link (https://zoom-lfx.platform.linuxfoundation.org/meetings/hiero?view=week) is current and accessible

As per coding guidelines Priority 1, broken or misleading links should be flagged.

Signed-off-by: exploreriii <[email protected]>
Signed-off-by: exploreriii <[email protected]>
@exploreriii exploreriii requested a review from manishdait January 4, 2026 13:15
Copy link

@coderabbitai coderabbitai bot left a comment

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 (4)
docs/maintainers/good_first_issue_candidate_guidelines.md (4)

58-58: Use descriptive link text for better clarity and accessibility.

The link text "GFIC Guidelines" uses an undefined acronym. This was previously flagged but not yet addressed.

🔎 Proposed fix
-Suitability can be assessed [GFIC Guidelines](https://github.com/hiero-ledger/hiero-sdk-python/blob/main/docs/maintainers/good_first_issues_guidelines.md)
+Suitability can be assessed in the [Good First Issue Guidelines](https://github.com/hiero-ledger/hiero-sdk-python/blob/main/docs/maintainers/good_first_issues_guidelines.md)

73-73: Use descriptive link text instead of "here".

Using "here" as link text is not descriptive and was previously flagged. Descriptive link text improves accessibility and clarity.

🔎 Proposed fix
-Check by reading good first issue guidelines [here](https://github.com/hiero-ledger/hiero-sdk-python/blob/main/docs/maintainers/good_first_issues_guidelines.md)
+Check by reading the [Good First Issue Guidelines](https://github.com/hiero-ledger/hiero-sdk-python/blob/main/docs/maintainers/good_first_issues_guidelines.md)

75-75: Fix grammatical error with double "are".

This sentence has a grammatical error that was previously flagged but not yet addressed.

🔎 Proposed fixes

Option 1:

-If easy issues are not 'Good First Issues' are in fact 'beginner' issues.
+If easy issues are not 'Good First Issues', they are in fact 'beginner' issues.

Option 2:

-If easy issues are not 'Good First Issues' are in fact 'beginner' issues.
+Easy issues that are not 'Good First Issues' are in fact 'beginner' issues.

125-125: Remove redundant link or restructure for clarity.

The link text "here" was previously flagged as not descriptive. Since "Good First Issue Guidelines" already appears in the sentence, the link text "here" is redundant.

🔎 Proposed fix
-1. Review the issue against the **Good First Issue Guidelines** [here](https://github.com/hiero-ledger/hiero-sdk-python/blob/main/docs/maintainers/good_first_issues_guidelines.md)
+1. Review the issue against the [Good First Issue Guidelines](https://github.com/hiero-ledger/hiero-sdk-python/blob/main/docs/maintainers/good_first_issues_guidelines.md)
📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between f4f532c and d2d996f.

📒 Files selected for processing (4)
  • .github/ISSUE_TEMPLATE/01_good_first_issue_candidate.yml
  • .github/ISSUE_TEMPLATE/04_good_first_issue.yml
  • docs/maintainers/good_first_issue_candidate_guidelines.md
  • docs/maintainers/good_first_issues_guidelines.md
🧰 Additional context used
📓 Path-based instructions (1)
docs/**

⚙️ CodeRabbit configuration file

docs/**: You are reviewing documentation for the Hiero Python SDK. These pages serve both SDK users and SDK developers.

Priority 1 - Correctness (code, commands, links)

  1. Verify code snippets conceptually run and match the current SDK API.
  2. Check shell commands and workflow steps against actual project tooling.
  3. Validate URLs and cross-references; flag broken or misleading links.

Priority 2 - Clarity and completeness

  1. Ensure each page states its purpose and expected outcome early.
  2. Prefer concrete, step-wise explanations over vague descriptions.
  3. Highlight missing prerequisites that would block a reader.
  4. For larger gaps, suggest filing a follow-up issue instead of blocking.

Priority 3 - Consistency and navigation

  1. Encourage consistent terminology with the SDK and examples.
  2. Check headings form a logical reading path.
  3. Confirm each page makes clear which audience it serves.

PHILOSOPHY

  • Treat docs as work-in-progress: optimize for correctness and clarity over perfection.
  • Keep feedback concise, action-oriented, and focused on reader success.
  • Do not request large-scale restructures unless current structure blocks understanding.

AVOID

  • Avoid lint-style feedback on Markdown formatting or minor wording.
  • Avoid proposing new conventions without clear benefit.
  • Avoid turning every high-level gap into a blocker.

Files:

  • docs/maintainers/good_first_issue_candidate_guidelines.md
  • docs/maintainers/good_first_issues_guidelines.md
🪛 LanguageTool
docs/maintainers/good_first_issues_guidelines.md

[style] ~40-~40: As an alternative to the over-used intensifier ‘very’, consider replacing this phrase.
Context: ...utors Importantly, they have: - ✅ A **very clear, explicitly described, or provided solu...

(EN_WEAK_ADJECTIVE)


[style] ~53-~53: As an alternative to the over-used intensifier ‘very’, consider replacing this phrase.
Context: ... Allowed (rare, explicit cases only) - Very small, explicitly described edits to existing...

(EN_WEAK_ADJECTIVE)

🪛 markdownlint-cli2 (0.18.1)
docs/maintainers/good_first_issues_guidelines.md

73-73: Link text should be descriptive

(MD059, descriptive-link-text)


125-125: Link text should be descriptive

(MD059, descriptive-link-text)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (7)
  • GitHub Check: Codacy Static Code Analysis
  • GitHub Check: build-and-test (3.10)
  • GitHub Check: build-and-test (3.13)
  • GitHub Check: build-and-test (3.12)
  • GitHub Check: build-and-test (3.11)
  • GitHub Check: run-examples
  • GitHub Check: StepSecurity Harden-Runner

@exploreriii exploreriii merged commit 2f1ed33 into hiero-ledger:main Jan 4, 2026
20 checks passed
parvninama pushed a commit to parvninama/hiero-sdk-python that referenced this pull request Jan 4, 2026
parvninama pushed a commit to parvninama/hiero-sdk-python that referenced this pull request Jan 4, 2026
parvninama pushed a commit to parvninama/hiero-sdk-python that referenced this pull request Jan 5, 2026
Signed-off-by: exploreriii <[email protected]>

feat: add GFI candidate notification bot with dry-run support

Signed-off-by: Parv <[email protected]>

fix: prevent runtime error by defining dryRun from process.env

Signed-off-by: Parv <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Advanced]: Create Beginner Issue guidelines

2 participants