feat: Add native Git commit linking and keyword status triggers to DevTrack issues (#2663)#3191
feat: Add native Git commit linking and keyword status triggers to DevTrack issues (#2663)#3191Neelr1912 wants to merge 4 commits into
Conversation
|
Hi @Neelr1912 — thanks for the PR! 🙌 DevTrack asks contributors to ⭐ star the repo before a PR can be merged. It takes two seconds and is the easiest way to support the project. Once you've starred, the |
GSSoC Label Checklist 🏷️@Priyanshu-byte-coder — please apply the appropriate labels before merging: Difficulty (pick one):
Quality (optional):
Validation (required to score):
|
|
Closes #2663 This PR introduces native Git commit linking with automatic issue reference detection, keyword-based status transitions, GitHub and GitLab webhook support, and project-level repository integration settings. Verification
Ready for review. Looking forward to your feedback! |
Problem Statement
Previously, developers had to manually update DevTrack issues to match their Git commits or pull request progress, which was time-consuming and often resulted in tracking boards getting out of sync with codebases.
Solution
We have introduced a native Git integration that parses commit messages from linked GitHub and GitLab repositories to automatically link commits to referenced issues and update their statuses based on configured triggers.
Key Changes
Core Parser & Logic (
src/lib/git-commit-linking.ts):normalizeRepoUrl) to match repository links.DT-402) and optional trigger keywords.Keyword Triggers & Status Transitions:
Fixes,Resolves,Closes) to transition issues to the Done column.Review,In-Review) to transition issues to the In Review column.devtrack_issue_activitiestimeline.Webhook Subsystems:
src/app/api/webhooks/github/route.ts).src/app/api/webhooks/gitlab/route.ts) supporting verification via token headers.Project Settings Management UI (
src/app/dashboard/settings/page.tsx):Project API (
src/app/api/projects/[id]/route.ts):PATCHhandler to allow updating project settings on the server side.Verification