Skip to content

fix(sync): renew the sealed delivery Gate trigger - #3388

Merged
stranske merged 1 commit into
mainfrom
codex/sync-review-ready-label
Sep 5, 2026
Merged

fix(sync): renew the sealed delivery Gate trigger#3388
stranske merged 1 commit into
mainfrom
codex/sync-review-ready-label

Conversation

@stranske

@stranske stranske commented Sep 5, 2026

Copy link
Copy Markdown
Owner

A previous delivery generation can leave sync:delivery-ready on a stable candidate PR. Sealing then adds an already-present label, so consumers whose Gate listens for labeled but not body edits receive no fresh event with the sealed body. This stalled trip-planner#1790; refreshing the label produced a fresh required Gate run (33933089879) with a passing delivery seal; its Python matrix separately exposed a packaging-test race, while rerunning the older run retained its unsealed event payload.

Maint 71 now establishes the staging hold, clears the ready label, and only then persists the start of review. Missing labels are harmless; other removal failures stop before advancing the review state. Sealing retains the staging merge hold and adds the ready label as before.

Validation: 82 contract tests pass, including real execution with a stale label, absent label (404), and permission failure (403) that must not advance state; git diff --check passes.

Copilot AI lite review requested due to automatic review settings September 5, 2026 00:34
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 5, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-05T00:36:23.725538Z 84ff4a4 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@coderabbitai

coderabbitai Bot commented Sep 5, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 9 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available. Your 95 included PR review attempts over the past 7 days set your current allowance at 1 review per hour.

Your organization has reached its usage spending cap. Adjust your spending cap in the billing tab.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Essentials

Run ID: 13319083-1fd2-4410-8c99-48e94578efbb

📥 Commits

Reviewing files that changed from the base of the PR and between 8294737 and 84ff4a4.

📒 Files selected for processing (2)
  • .github/scripts/__tests__/sync_pr_merge_contract.test.js
  • .github/scripts/maint71_merge_sync_prs.js

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

@agents-workflows-bot

Copy link
Copy Markdown
Contributor

Automated Status Summary

Head SHA: cb8f0a5
Latest Runs: ⏳ pending — Gate
Required contexts: summary
Required: core tests (3.12): ⏳ pending, core tests (3.13): ⏳ pending, docker smoke: ⏳ pending, gate: ⏳ pending

Workflow / Job Result Logs
(no jobs reported) ⏳ pending

Coverage Overview

  • Coverage history entries: 0

Updated automatically; will refresh on subsequent CI/Docker completions.


Keepalive checklist

Scope

No scope information available

Tasks

  • No tasks defined

Acceptance criteria

  • No acceptance criteria defined

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 change is narrowly scoped, matches the stated incident/behavior, and is backed by explicit contract tests for the key success and failure cases.

Pull request overview

This PR updates Maint 71’s “begin stable delivery review” step to reliably re-trigger consumer Gates that only listen for labeled events by ensuring any stale sync:delivery-ready label is removed before the PR body is updated to the “reviewing” delivery state. This prevents a prior delivery generation’s leftover label from causing sealing to add an already-present label (and therefore emit no fresh label event with the sealed body).

Changes:

  • Reordered the review-start mutations to: add the staging hold label → remove any stale sync:delivery-ready label (ignore 404) → persist the updated PR body.
  • Added a contract test covering: stale label removal, absent label (404) being non-blocking, and permission failure (403) preventing review state advancement.
File summaries
File Description
.github/scripts/maint71_merge_sync_prs.js Clears stale sync:delivery-ready before persisting “reviewing” state so later sealing reliably emits a fresh labeled event.
.github/scripts/__tests__/sync_pr_merge_contract.test.js Adds a real-execution contract test to lock in the new label-clearing behavior and failure-mode handling.
Review details
  • Files reviewed: 2/2 changed files
  • Comments generated: 0
  • Review effort level: Lite

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

@stranske
stranske merged commit f88d7fc into main Sep 5, 2026
47 checks passed
@stranske
stranske deleted the codex/sync-review-ready-label branch September 5, 2026 00:45
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