docs(review): withdraw the Greptile merge requirement it cannot satisfy (GTM-45) - #17
Merged
Merged
Conversation
…fy (GTM-45) `Greptile Review` was promoted to a required context on 2026-08-12 after a seven-criterion calibration. Criterion 5 — a further push retriggers review against the new head — stopped holding the next day. Greptile kept posting reviews and stopped emitting the check run branch protection matches on, so the required context could not be satisfied by any action available to a contributor and `main` became unmergeable for every change, hotfixes included. Observed on PR #14 across four heads (`0ee76bc`, `c3c17a2`, `3aa4531`, `be2e965`): a Greptile review posted on each, zero `Greptile Review` check runs on any, 8/8 other checks green, zero unresolved threads. The same `statusCheck: true` kept producing the check on `workspacejson/standard` across #34, #35 and #36 in the same window — the configuration is not missing, the emission is not dependable. Applied to protection on 2026-08-13, measured before and after against the API rather than trusting the write response. App id bindings preserved on the four surviving contexts. Greptile is **not** uninstalled — `greptile-apps` (867647) remains installed and reviewing; only its authority over merge eligibility is withdrawn. Criterion 5 is annotated rather than deleted: it is the criterion whose failure the requirement could not survive, and the calibration record now says what the protocol did not test — durability. Every criterion was measured once, in one sitting. A behavioral bar measured once is a measurement, not a guarantee. Recorded honestly: PR #14 merged by administrator bypass, not by satisfying protection, so the GTM-39 receipt rests on four contexts plus conversation resolution. A gate satisfiable only by bypass is not a gate. The accepted cost is that `main` now has no mechanically enforced reviewer context at all — conversation resolution and the written per-finding protocol carry the whole semantic gate. Re-admission requires both a substantive review on the current head and a mechanically enforceable current-head signal. Absence is reported as absence; quota and error comments are not review evidence.
There was a problem hiding this comment.
qmarcelle has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.
Reviewer's GuideThis PR updates the review documentation to record that the Sequence diagram for Greptile Review withdrawal and merge deadlock resolutionsequenceDiagram
actor Contributor
participant GitHub
participant BranchProtection
participant Greptile_app
Contributor->>GitHub: push_head_to_main
GitHub->>Greptile_app: trigger_review
Greptile_app->>GitHub: post_review_comments
alt before_withdrawal (Greptile Review required)
GitHub->>Greptile_app: expect_Greptile_Review_check_run
note over Greptile_app,GitHub: Greptile Review check run not emitted
GitHub->>BranchProtection: evaluate_required_status_checks
BranchProtection-->>Contributor: merge_blocked_missing_Greptile_Review
else after_withdrawal (Greptile Review not required)
GitHub->>BranchProtection: evaluate_required_status_checks
note over BranchProtection: Only build-and-smoke, standard-candidate-consumption, SonarCloud required
BranchProtection-->>Contributor: merge_allowed_if_checks_green_and_conversations_resolved
end
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
|
There was a problem hiding this comment.
Hey - I've left some high level feedback:
- The PR-14 evidence and withdrawal narrative are now duplicated across
merge-policy.mdandcalibration-2026-08.md; consider consolidating the detailed account in one file and referencing it from the other to avoid future drift. - The withdrawal and re-admission criteria for
Greptile Revieware restated in both documents with slightly different wording; it may be clearer to define the re-admission conditions once and link to them, so the policy remains single-sourced.
Prompt for AI Agents
Please address the comments from this code review:
## Overall Comments
- The PR-14 evidence and withdrawal narrative are now duplicated across `merge-policy.md` and `calibration-2026-08.md`; consider consolidating the detailed account in one file and referencing it from the other to avoid future drift.
- The withdrawal and re-admission criteria for `Greptile Review` are restated in both documents with slightly different wording; it may be clearer to define the re-admission conditions once and link to them, so the policy remains single-sourced.Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Closes GTM-45.
Greptile Reviewwas promoted to a required status context on 2026-08-12 after a seven-criterion calibration. Criterion 5 — a further push retriggers review against the new head — stopped holding the next day. Greptile kept posting reviews and stopped emitting the check run branch protection matches on, so the required context could not be satisfied by any action available to a contributor, andmainbecame unmergeable for every change including hotfixes.Evidence — PR #14, four heads
Greptile Reviewcheck run0ee76bcc3c17a2(rebase ontomain)3aa4531(fresh push)be2e965(merged head)The same
statusCheck: truein.greptile/config.jsonkept producing the check onworkspacejson/standardacross #34, #35 and #36 in the same window. The configuration is not missing; emission on this repository is not dependable.Change applied to protection (2026-08-13), read back from the API
strict,required_conversation_resolution,dismiss_stale_reviews,enforce_admins, force-push and deletion settings all preserved. App id bindings preserved on the four surviving contexts, so a same-named check from another app still cannot satisfy them.Greptile was not uninstalled.
greptile-apps(app id867647) remains installed on the org and continues to review. Only its authority over merge eligibility is withdrawn.What this PR records that is uncomfortable
Greptile Reviewwas absent. The GTM-39 receipt therefore rests on four contexts plus conversation resolution. Recorded rather than smoothed over — a gate satisfiable only by bypass is not a gate.mainnow has no mechanically enforced reviewer context at all. That is a real reduction in enforcement, accepted knowingly: the alternative on offer was not a stronger gate but an unsatisfiable one, which delivered no review authority either while blocking every merge.Criterion 5 is annotated in place rather than deleted — it is the criterion whose failure the requirement could not survive.
Re-admission
Greptile Reviewmay become merge-authoritative again only after both are observed: a substantive review on the current PR head, and a mechanically enforceable current-head signal compatible with branch protection. Absence of either is reported as absence. Quota, credit-limit and error comments are not review evidence.This PR is also the live proof the deadlock is resolved: it should merge on the four contexts that actually emit, with no bypass.
Summary by Sourcery
Update documented merge policy to reflect that the
Greptile Reviewstatus check has been withdrawn as a required context due to unreliable check-run emission, while the app remains installed and its findings still influence conversation resolution.Documentation:
Greptile Reviewfrom the list of required status checks and describe the resulting reliance on conversation resolution and per-finding protocol for review enforcement.