Skip to content

Isolate Git checkouts for queue-owned dashboard processors - #454

Merged
trask merged 2 commits into
mainfrom
trask-rollout-procedure
Oct 13, 2026
Merged

trask merged 2 commits into
mainfrom
trask-rollout-procedure

Conversation

@trask

@trask trask commented Oct 9, 2026

Copy link
Copy Markdown
Member

Give each queue-owned dashboard processor an independent Git checkout to prevent concurrent worktree operations from reading partially initialized commondir metadata.

Checkouts are shallow local clones reused across waves. Both lanes keep four-repository parallelism and existing code pins, state transactions, and delivery leases. This addresses the worktree registration race separately from #450's Git configuration contention.

Pause both GitHub and the bridge and retire all old drains before upgrading. No release promotion or queue migration is needed.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 83c9326-678d-44e2-a25b-10a567191722
@trask
trask requested a balanced review from Copilot October 9, 2026 18:06
@opentelemetry-pr-dashboard

opentelemetry-pr-dashboard Bot commented Oct 9, 2026 •

Copy link
Copy Markdown

Pull request dashboard status

Merged · refreshed 2026-10-13 15:20 UTC

Status above doesn't look right?
  • Anything look wrong? Report it with what you expected; it helps us improve the dashboard.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

The isolation flow is consistently integrated, comprehensively tested, and preserves existing execution behavior.

0 open findings

What changed in this PR

Adds per-repository Git checkout isolation for queue-owned dashboard processors, preventing concurrent worktree metadata races.

Changes:

  • Creates reusable shallow clones for each repository.
  • Routes processors through isolated checkout roots with failure handling.
  • Adds concurrency regression tests and upgrade guidance.
File Description
execution_code.py Implements isolated checkout creation and reuse.
drain_queue.py Prepares and supplies repository-specific checkout roots.
test_owned_execution.py Tests isolation, concurrency, retries, and cleanup.
CONTEXT.md Documents the checkout architecture.
WEBHOOK_SETUP.md Documents safe upgrade sequencing.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@trask
trask marked this pull request as ready for review October 9, 2026 20:07
@trask
trask requested a review from a team as a code owner October 9, 2026 20:07
@trask
trask requested a review from adrielp October 9, 2026 20:07
@trask
trask merged commit 41813d3 into main Oct 13, 2026
6 checks passed
@trask
trask deleted the trask-rollout-procedure branch October 13, 2026 15:13
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.

3 participants