Skip to content

docs: no ConfigureAwait, and what to do when a merge is already in a PR - #2335

Merged
erwan-joly merged 1 commit into
masterfrom
claude-md-rules
Aug 29, 2026
Merged

erwan-joly merged 1 commit into
masterfrom
claude-md-rules

Conversation

@erwan-joly

Copy link
Copy Markdown
Collaborator

Two rules, one new and one that existed but was not landing.

No ConfigureAwait

Every host in this repo is a generic-host console app, so there is no synchronization context to return to and ConfigureAwait(false) is a no-op that only lengthens the line. It has been coming up in review repeatedly — #2304 carries a review: drop the ConfigureAwait(false) calls commit — so it belongs in the conventions instead.

There are 168 calls already in the tree (47 in Parser.cs alone). This does not remove them; it says they are not a precedent. Happy to do the cleanup separately if you want it.

Rebase, never merge

The rule was already there and every one of the seven open PRs still had a merge commit, so restating it verbatim would not have helped. What it was missing is the case people actually hit: the branch is behind, or the PR has gone un-mergeable, and a merge is the quickest way out. It now names those cases, says a merge commit already in a PR is a defect to be rebased out rather than left, and gives the check:

git log --oneline --merges origin/master..HEAD   # must print nothing

It also points at rerere, because the thing that makes rebasing feel worse than merging is a long branch replaying the same conflict on every commit.

…here

Every host is a generic-host console app, so ConfigureAwait(false) has no
synchronization context to skip and only adds noise. The 168 calls already in
the tree are noted as not being a precedent rather than cleaned up here.

The rebase rule existed but every open PR still carried a merge commit, so it
now names the cases people actually reach for a merge in, gives the one-line
check, and points at rerere for the long branches where the same conflict
repeats on every commit.
@coderabbitai

coderabbitai Bot commented Aug 29, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 39 minutes.

View limit details

Limit details: You’ve used all 2 included reviews currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 1b5af1c6-da8a-4c53-b07c-a5dd2cc33cb7

📥 Commits

Reviewing files that changed from the base of the PR and between 3cfbde3 and f54476a.

📒 Files selected for processing (1)
  • CLAUDE.md

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@erwan-joly
erwan-joly merged commit 8a000a1 into master Aug 29, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant