Skip to content

ci(dev-close-notice): read schedule from tracking issue + post clear-to-merge follow-up#13792

Open
ilhan007 wants to merge 2 commits into
mainfrom
ci/dev-close-clear-notice
Open

ci(dev-close-notice): read schedule from tracking issue + post clear-to-merge follow-up#13792
ilhan007 wants to merge 2 commits into
mainfrom
ci/dev-close-clear-notice

Conversation

@ilhan007

@ilhan007 ilhan007 commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

Two updates to the dev-close notice workflow.

1. Read the release schedule from the tracking issue

Instead of hardcoding DEV_CLOSE_PERIODS in the workflow, the mode-decision step now fetches issue #10568 and parses the release-schedule Markdown table on it. When the schedule slips a day or two — which happens — the issue is edited in place and the workflow follows on the next run, no PR needed.

  • Parser is column-scoped (Dev Close + Release only), so a typo in the Dev Start column doesn't poison the row.
  • Rows with unparseable dates are skipped with a warning rather than failing the whole run.
  • Multiple yearly tables in the same issue (## 2026, ## 2027, …) merge into one list — appending next year's schedule is a pure issue edit.
  • permissions.issues: read added so the workflow can GET /issues/:n.

2. Add a follow-up 'clear-to-merge' comment

When the workflow runs on a schedule / workflow_dispatch outside a dev-close window, it now sweeps every open PR that already carries the dev-close-notice marker and posts a one-shot follow-up telling the author the release has shipped and the PR can now be merged.

  • New idempotency marker: <!-- dev-close-cleared -->.
  • pull_request events outside a window remain no-ops so we don't churn comments on every PR event.
  • Clear-mode path does no builds / no CEM work — pure comment plumbing.
  • RELEASE / RELEASE_DATE are no longer required in clear mode.

Test evidence

Parser was run against the current issue #10568 body — all six 2026 rows extracted cleanly. A mocked multi-year body (## 2026 + ## 2027) confirms next year's table will be picked up when it's added.

Follow-up to #13633.

ilhan007 added 2 commits July 6, 2026 15:27
Two updates to the dev-close notice workflow:

1. Extend DEV_CLOSE_PERIODS with the remaining 2026 releases (v2.25–v2.29)
   sourced from #10568.

2. Add a follow-up 'clear-to-merge' comment. When the workflow runs on a
   schedule / workflow_dispatch outside a dev-close window, it sweeps
   every open PR that already carries the dev-close-notice marker and
   posts a one-shot follow-up telling the author the release has shipped
   and the PR can now be merged. Idempotent via <!-- dev-close-cleared -->.

pull_request events outside a window remain no-ops so we don't churn
comments on every event.
Replaces the hardcoded DEV_CLOSE_PERIODS array with a fetch+parse of the
release-schedule Markdown table on issue #10568. When the schedule slips
a day or two — which happens — the issue is edited in place and the
workflow follows on the next run, no PR needed.

Parser is column-scoped (Dev Close + Release only) so a typo in the
Dev Start column (like the current '103.09.26' for v2.27) doesn't
poison the row. Rows with unparseable dates are skipped with a warning
rather than failing the whole run.

Adds 'issues: read' to the permissions block.
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