shuke987 opened a new pull request, #69447:
URL: https://github.com/apache/doris/pull/69447

   ### What problem does this PR solve?
   
   Related PR: #68499
   
   The review runner's bulk REST create-review request rejects five valid 
inline findings on #68499 with HTTP 422 (`Position could not be resolved`; 
line/side also fails). In a controlled experiment at the same head/base, all 
five original findings were accepted when added sequentially to **one PENDING 
review** through GraphQL. The experimental draft was deleted afterward. The 
exact GitHub internal diff limit is not established.
   
   For reviews with inline findings, this change creates one draft, adds one 
thread per request, verifies the complete comment set, then publishes once. It 
converts the existing path/position/body input to line/side using the 
authoritative local PR diff. Summary-only reviews keep their current submission 
path.
   
   The invocation marker, exclusive submission intent, frozen head/base checks, 
priority/convergence gate, and exact final readback remain required. The helper 
rechecks competing bot reviews before publication. Add failures trigger 
best-effort cleanup only of the exactly owned pending draft; uncertain writes 
are never retried. `review-draft.json` is included in failure artifacts, and 
GraphQL errors in HTTP 200 responses retain HTTP diagnostics. Ambiguous 
publication, unavailable cleanup, and hard termination boundaries are 
documented.
   
   This PR remains **draft** because live formal publication and the GitHub 
Actions identity still need rollout validation. The existing experiment 
validates draft construction, not end-to-end CI delivery.
   
   ### Release note
   
   None
   
   ### Check List (For Author)
   
   - Test
       - [x] Unit Test: `RUN_GH_HTTP_TESTS=1 python3 -m unittest discover -s 
.github/scripts -p 'test_*.py'` — **275 tests OK, 19 platform skips**. Real gh 
HTTP tests use only a loopback server with fake credentials.
       - [x] Manual test: same-head/base #68499, five sequential additions to 
one draft all returned HTTP 200 with no GraphQL errors; 
contents/anchors/ownership verified, draft deleted, history unchanged.
       - [x] Offline replay: the new position conversion matches all five 
anchors in #68499's frozen diff.
       - [x] `git diff --check`; actionlint v1.7.7, excluding only its 
unsupported existing `concurrency.queue` key (optional ShellCheck/Pyflakes 
disabled).
   - Behavior changed:
       - [x] Yes. Inline reviews use staged submission; partial drafts never 
count as delivery.
   - Does this need documentation?
       - [x] Yes. Updated `.github/scripts/review-github-diagnostics.md` in 
this PR.
   
   ### Check List (For Reviewer who merge this PR)
   
   - [ ] Confirm the release note
   - [ ] Confirm test cases and rollout validation
   - [ ] Confirm document
   - [ ] Add branch pick label if applicable
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to