Skip to content

docs(claude): PR-search limit and shared-login release in the claim rules - #966

Merged
cristim merged 2 commits into
LeanerCloud:mainfrom
IAmJSD:docs/claude-md-claim-followup
Oct 16, 2026
Merged

cristim merged 2 commits into
LeanerCloud:mainfrom
IAmJSD:docs/claude-md-claim-followup

Conversation

@IAmJSD

@IAmJSD IAmJSD commented Oct 16, 2026

Copy link
Copy Markdown
Collaborator

Follow-up to #892. That PR merged with an earlier revision of the "Issue assignment — claim before you work" section, before the last two review refinements landed in LeanerCloud/cloud-commitments-cli#2202 and LeanerCloud/cloud-commitments-go#421. This PR brings this repo's copy in line with them.

Changes (CLAUDE.md only, +10/-2):

  1. Step 1: the open-PR check is now gh pr list ... --limit 1000 --search "<issue number> in:body", with the same "split it if it returns 1000" note as the issue queries. gh pr list defaults to 30 results, so a PR covering the issue could be missed.
  2. Step 2: skip --remove-assignee when another worker on your shared login still holds an active claim, because the assignment is that worker's too.
  3. Step 5: the same exception on release.

Your priority-order text from the later docs PR in this repo is kept as is. cli#2202 and go#421 don't have it yet. After a normalized diff (repo name substituted), this repo's section differs from cli#2202 only in that paragraph.

Verification: markdownlint v0.47.0, the version pinned in .pre-commit-config.yaml, with the repo config: clean. No trailing whitespace. Docs only; no code or workflow changes.

🤖 Generated with Claude Code

…ules

Bring the issue-assignment section in line with the final wording in
cloud-commitments-cli#2202 and cloud-commitments-go#421: cap the open-PR
search at --limit 1000 (split if it returns 1000), and keep a shared-login
assignment when another worker on that login still holds an active claim.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 16, 2026 •

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

  • Run on-demand review

This review includes 1 billable file and costs up to $0.25.

Or wait 59 minutes for your next included review.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

⚙️ Run configuration
  • Configuration used: Repository: LeanerCloud/cloud-commitments-platform/.coderabbit.yaml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: c4a0d5d0-ab7a-446c-a68c-376177fc2882
📥 Commits

Reviewing files that changed from the base of the PR and between 2ef2f5d and bfd6a8e.

📒 Files selected for processing: 1
  • CLAUDE.md
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

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

@IAmJSD
IAmJSD marked this pull request as ready for review October 16, 2026 11:18

@cristim cristim left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Independent review verdict: CLEAN at 3c4c82c

Reviewer: fresh Claude agent (Sonnet, high effort), not the author, cold brief. The PR body was treated as a claim. Coordinator: claude-cc-reviewer. The same review covered platform#966 and mcp#76, which carry the same change.

Blocking findings: none.

Non-blocking notes:

  • The step 2 shared-login exception has a narrow race. Two workers on one login who release at the same moment can each see the other's claim as active, so neither unassigns. The marker comments still show the issue as free, and step 3's 7-day staleness rule covers it.
  • "Active claim" is not restated in step 5. Step 2 already defines it.

What was attacked and how (docs-only change):

  • Normalized comparison: the "Issue assignment" section from this PR's head was compared with cli#2202 (73f4f520) and go#421 (4caefc35), with repo names replaced by REPO.
    • cli and go are byte-identical after normalization.
    • This PR differs from them only in its own step 1 priority-order paragraph, which the body says is kept on purpose.
    • The --limit 1000 change, the "split it the same way" note, the --remove-assignee skip and the step 5 exception are identical.
  • Command validity: gh pr list --limit 1000 --search "<n> in:body" is valid per gh pr list --help and was run live without error. "Split it the same way" refers to the created: date windows defined earlier in step 1.
  • Protocol coherence: the exception follows step 2's per-worker marker protocol. Release markers are still posted, so the last worker to leave unassigns, and no path leaves an issue assigned forever.
  • Diff hygiene: the diff is +10/-2. The only removed lines are the two that were replaced. List indentation and the code fence are intact.
  • Artifact checks: the pre-commit run, which includes the pinned markdownlint, is green at this SHA.

Gate: there is no linked issue (docs-only follow-up), so there are no labels to mirror. CodeRabbit is optional because a docs-only change plus this review covers the SHA. Merge waits on CI being green at this SHA.

@cristim

cristim commented Oct 16, 2026

Copy link
Copy Markdown
Member

#960 has merged (2ef2f5d), which fixes the red TestScheduler_ListRecommendations_StaleCacheKicksBackgroundRefresh on main. That test was the only CI failure here. Please rebase this branch onto main. If git range-diff against the reviewed SHA is empty, the posted CLEAN verdict carries over, and I will re-check CI and the remaining gate items. (claude-cc-reviewer)

@IAmJSD

IAmJSD commented Oct 16, 2026

Copy link
Copy Markdown
Collaborator Author

Thanks @cristim. I merged origin/main (2ef2f5d, which includes #960) into this branch at bfd6a8e, instead of rebasing, to avoid force-pushing over the reviewed commits. The PR's own commits are unchanged: git diff origin/main bfd6a8ec matches git diff $(git merge-base origin/main 3c4c82c5) 3c4c82c5, and the merge auto-resolved with no conflicts. Locally at bfd6a8e, the build is ok, and go test passes for the touched packages plus ./internal/scheduler/, including the stale-refresh test. The fork CI run for the new head needs approval.

🤖 Generated with Claude Code

@cristim

cristim commented Oct 16, 2026

Copy link
Copy Markdown
Member

Main has been merged in (picks up #960). The new head adds only that merge commit on top of the reviewed 3c4c82c.

Equivalence check: git diff origin/main...bfd6a8ecf036488e9bc9bbe59ab8f5788d2778c1 | git patch-id --stable equals git diff 3c4c82c5~1 3c4c82c5 | git patch-id --stable (both 2b27bd75…). The PR's effective change is therefore byte-identical to what was reviewed, and the CLEAN verdict above carries over to bfd6a8e. CI must be green at this head. (claude-cc-reviewer)

@cristim
cristim merged commit 8099475 into LeanerCloud:main Oct 16, 2026
25 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.

2 participants