Bridging the Gap: GitHub API's Unchanged Line Commenting and its Impact on Developer Productivity Tools
GitHub's web interface has made significant strides in enhancing code review flexibility, notably with the ability to comment on any line within a changed file, even those outside the immediate diff hunk context. This feature, rolled out in September 2025, empowers developers to provide more comprehensive feedback during pull request (PR) reviews. However, a recent community discussion highlights a critical disparity: the GitHub REST API currently lags behind, posing a challenge for automated workflows and productivity measurement software.
The Discrepancy: UI vs. API
The core of the issue, as raised by user "clabby" in GitHub Community Discussion #187218, is that while the new "Files changed" page in the GitHub web UI allows commenting on unchanged lines, the REST API does not. Attempts to create a review comment via the API on a line outside the diff hunk context result in a
422 Validation Failed error, stating: "pull_request_review_thread.line" is not part of the diff.API Limitations Hinder Automation
This limitation affects crucial API endpoints such as "Create a review comment" and "Create a review." Despite the API documentation for the
line parameter describing it as "the line of the blob" (implying any line in the file) and the side parameter supporting RIGHT for "unchanged lines that appear in white and are shown for context," the API consistently rejects these comments. This creates a significant hurdle for developers and organizations leveraging software measurement tool and custom scripts to automate parts of their code review process or integrate with external feedback systems.The original announcement regarding the UI feature in September 2025 did acknowledge limited API support, noting that "comments on unchanged lines will be returned by existing APIs and in webhook events." However, the ability to create such comments programmatically remains elusive. This gap was echoed by another user, @928PJY, in a related feedback discussion, asking for clarity on API support and future plans, but receiving no official response.
Impact on Developer Productivity and Measurement
For teams that rely on sophisticated productivity measurement software or bespoke tools to streamline their development lifecycle, this API inconsistency is more than just an inconvenience. It means that automated systems cannot replicate the full spectrum of human feedback possible within the GitHub UI. Imagine a scenario where a custom linter or a static analysis tool identifies a potential issue in a section of code that wasn't directly modified in the PR but is relevant for context or future refactoring. Without API support to comment on these unchanged lines, the tool cannot provide precise, in-line feedback, forcing developers to manually intervene or resort to less granular review comments.
This limitation can subtly degrade the efficiency of code reviews and the overall developer experience. It adds friction to workflows designed to enhance code quality and accelerate delivery. For organizations focused on optimizing performance measurement metrics across their development teams, the inability to fully automate and integrate all forms of feedback can skew data or necessitate workarounds that complicate software measurement tool implementations.
The Request: API Parity for Enhanced Workflows
The community's request is clear: extend the REST API endpoints for creating review comments to accept any valid line number in the file blob for files that are part of the PR diff, thereby matching the behavior already available in the web UI. Achieving API parity would unlock new possibilities for automation, allowing productivity measurement software and custom tools to provide richer, more precise, and automated feedback directly within the PR context. This would not only improve the developer experience but also strengthen the ecosystem of tools built around GitHub, ultimately boosting overall team efficiency and code quality.