Skip to content

Conversation

@jd
Copy link
Member

@jd jd commented Feb 10, 2026

Use asyncio.Event to coordinate PR operations - each change waits only
for its dependency's PR number to be resolved. Updates with existing PRs
signal immediately, allowing downstream tasks to proceed in parallel.
Add semaphore to limit concurrent GitHub API calls (default 5).

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

Copilot AI review requested due to automatic review settings February 10, 2026 09:19
@mergify mergify bot had a problem deploying to Mergify Merge Protections February 10, 2026 09:20 Failure
@jd
Copy link
Member Author

jd commented Feb 10, 2026

This pull request is part of a stack:

  1. perf(stack): concurrent PR create/update with event coordination (#960) 👈
  2. perf(stack): concurrent comment updates with asyncio.gather (#961)

@mergify
Copy link
Contributor

mergify bot commented Feb 10, 2026

Merge Protections

Your pull request matches the following merge protections and will not be merged until they are valid.

🔴 👀 Review Requirements

This rule is failing.
  • any of:
    • #approved-reviews-by>=2
    • author = dependabot[bot]
    • author = mergify-ci-bot
    • author = renovate[bot]

🟢 🤖 Continuous Integration

Wonderful, this rule succeeded.
  • all of:
    • check-success=ci-gate

🟢 Enforce conventional commit

Wonderful, this rule succeeded.

Make sure that we follow https://www.conventionalcommits.org/en/v1.0.0/

  • title ~= ^(fix|feat|docs|style|refactor|perf|test|build|ci|chore|revert)(?:\(.+\))?:

🟢 🔎 Reviews

Wonderful, this rule succeeded.
  • #changes-requested-reviews-by = 0
  • #review-requested = 0
  • #review-threads-unresolved = 0

🟢 📕 PR description

Wonderful, this rule succeeded.
  • body ~= (?ms:.{48,})

@mergify
Copy link
Contributor

mergify bot commented Feb 10, 2026

🧪 CI Insights

Here's what we observed from your CI run for df73baf.

🟢 All jobs passed!

But CI Insights is watching 👀

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR improves stack push throughput by running PR create/update operations concurrently while still preserving stacked dependencies via asyncio.Event coordination, and by limiting concurrent GitHub API calls with a semaphore.

Changes:

  • Add per-change task objects (ChangeTask) with asyncio.Event signaling to coordinate dependency PR number availability.
  • Execute create/update operations concurrently using asyncio.gather, waiting only on the upstream PR number when needed.
  • Introduce a module-level semaphore limit (MAX_CONCURRENT_API_CALLS = 5) to cap parallel GitHub API calls.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@jd jd force-pushed the devs/jd/faster/I8f113d3ad7c62665f16f88f19b9e264a8daf8310 branch from 22ec14d to 58fc08e Compare February 10, 2026 10:13
@jd jd force-pushed the devs/jd/faster/I9f131b55d1f28415d56b8cc3d50e3be530481644 branch from fefbb3a to 1cbd94f Compare February 10, 2026 10:13
@mergify mergify bot had a problem deploying to Mergify Merge Protections February 10, 2026 10:14 Failure
@jd jd force-pushed the devs/jd/faster/I8f113d3ad7c62665f16f88f19b9e264a8daf8310 branch from 58fc08e to 6f4a3a0 Compare February 10, 2026 10:20
@jd jd force-pushed the devs/jd/faster/I9f131b55d1f28415d56b8cc3d50e3be530481644 branch from 1cbd94f to c3d227e Compare February 10, 2026 10:20
@mergify mergify bot had a problem deploying to Mergify Merge Protections February 10, 2026 10:20 Failure
@mergify mergify bot requested a review from a team February 10, 2026 10:21
@jd jd force-pushed the devs/jd/faster/I8f113d3ad7c62665f16f88f19b9e264a8daf8310 branch from 6f4a3a0 to f5f761d Compare February 10, 2026 11:33
@jd jd force-pushed the devs/jd/faster/I9f131b55d1f28415d56b8cc3d50e3be530481644 branch from c3d227e to 68e5ef5 Compare February 10, 2026 11:33
@mergify mergify bot had a problem deploying to Mergify Merge Protections February 10, 2026 11:34 Failure
Base automatically changed from devs/jd/faster/I8f113d3ad7c62665f16f88f19b9e264a8daf8310 to main February 10, 2026 12:52
@mergify
Copy link
Contributor

mergify bot commented Feb 10, 2026

@jd this pull request is now in conflict 😩

@mergify mergify bot added the conflict label Feb 10, 2026
Use asyncio.Event to coordinate PR operations - each change waits only
for its dependency's PR number to be resolved. Updates with existing PRs
signal immediately, allowing downstream tasks to proceed in parallel.
Add semaphore to limit concurrent GitHub API calls (default 5).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Change-Id: I9f131b55d1f28415d56b8cc3d50e3be530481644
Claude-Session-Id: f00e6604-9d24-4f44-9781-1930247e9f49
@jd jd force-pushed the devs/jd/faster/I9f131b55d1f28415d56b8cc3d50e3be530481644 branch from 68e5ef5 to df73baf Compare February 10, 2026 13:02
@mergify mergify bot removed the conflict label Feb 10, 2026
@mergify mergify bot had a problem deploying to Mergify Merge Protections February 10, 2026 13:02 Failure
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants