LearnNewsExamplesServices
Frontmatter
titleFix #7377 Created Script to Sync New GitHub Issues to Local Markdown Files
authornabeel001
stateMerged
createdAtOct 9, 2025, 7:05 AM
updatedAtOct 9, 2025, 8:42 PM
closedAtOct 9, 2025, 8:42 PM
mergedAtOct 9, 2025, 8:42 PM
branchesdevsync-new-github-issues
urlhttps://github.com/neomjs/neo/pull/7424
Merged
nabeel001
nabeel001 commented on Oct 9, 2025, 7:05 AM

Please make sure to read the Contributing Guidelines:

https://github.com/neomjs/neo/blob/dev/CONTRIBUTING.md

What kind of change does this PR introduce? (check at least one)

  • Bugfix
  • Feature
  • Code style update
  • Refactor
  • Build-related changes
  • Other, please describe:

Does this PR introduce a breaking change? (check one)

  • Yes
  • No

If yes, please describe the impact and migration path for existing applications:

The PR fulfills these requirements:

  • It's submitted to the dev branch, not the main branch
  • When resolving a specific issue, it's referenced in the PR's title (e.g. fix #xxx[,#xxx], where "xxx" is the issue number)

If adding a new feature, the PR's description includes:

  • A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

Other information: Created Script to Sync New GitHub Issues to Local Markdown Files Closes #7377

tobiu
tobiu commented on Oct 9, 2025, 8:42 PM

thx for your contribution! input from gemini:

✦ This is an excellent PR that fully meets the requirements of the ticket. I've reviewed all three changed/added files (createGhIssue.mjs, syncGhIssuesToLocal.mjs, and the new util/ticketUtils.mjs), and the implementation is solid.

  • Refactoring: The helper functions from createGhIssue.mjs have been correctly extracted into the new shared module util/ticketUtils.mjs.
  • Code Reuse: Both the original createGhIssue.mjs script and the new syncGhIssuesToLocal.mjs script correctly import and use the shared functions from the utility module.
  • New Script Logic: The syncGhIssuesToLocal.mjs script is well-implemented. It correctly uses the gh CLI to fetch issues, compares them against local files, and creates any missing tickets. The inclusion of --dry-run is also a great feature.

This is a high-quality submission that can be merged.

One very minor point for a future cleanup: I noticed a small inconsistency in the generated filenames.

  • The createGhIssue script renames files to gh-.md (e.g., gh123-title.md).
  • The new syncGhIssuesToLocal script creates files named gh-<ID>-<slug>.md (e.g., gh-123-title.md).

This is not a blocker, but it would be good to unify this to a single format in a future ticket to ensure perfect consistency.

Great work

--