You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
parseGithubRef in lib/pr-journey.ts turns a GitHub PR/issue URL into { owner, repo, number, kind }. Every milestone submission goes through it.
There are no tests for it yet.
Cover at least
a PR URL → kind: "pr", and an issue URL → kind: "issue"
www.github.com, http://, and trailing /files or #discussion still parse
surrounding whitespace is ignored
non-GitHub URLs, a repo URL with no number, and gitlab.com URLs return null
owner/repo names with dots and hyphens
How
Create lib/pr-journey.test.ts next to the code. Follow the style of lib/github-auth.test.ts.
Run npm test. Then break the code on purpose (flip a condition) and watch at least one of your tests fail. Paste that failure output in the PR description, then undo the break.
Test behaviour through the exported function only. Don't change the source file unless you find a bug, and if you do, stop and comment on this issue first.
Size: ~30–60 lines of tests, 0 lines of source.
Taking this? Comment /assign and the bot assigns you if it's free. One issue per person at a time; comment /unassign to hand it back. That's milestone 2 of the 10 PR Journey. Setup, the checks CI runs, and how to open the PR from your fork are in CONTRIBUTING.md. Put Fixes #<this issue> in your PR description.
Activity
ritujain8638-source commentedon Sep 22, 2026
/assign
github-actions commentedon Sep 22, 2026
@ritujain8638-source it's yours! 🎉
main, withFixes #88in the description.Can't finish it? Comment
/unassignso someone else can pick it up.test: add unit tests for parseGithubRef