원클릭으로
draft-roadmap-issues
Convert an approved roadmap RFC into create/update/close operations for wagtail/roadmap issues
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Convert an approved roadmap RFC into create/update/close operations for wagtail/roadmap issues
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | draft-roadmap-issues |
| description | Convert an approved roadmap RFC into create/update/close operations for wagtail/roadmap issues |
| license | MIT |
| metadata | {"audience":"maintainers","internal":true,"disable-model-invocation":true} |
Convert an approved "Public roadmap updates" RFC into local issue files under .issues/, ready to review and push with gh-issue-sync.
Counterpart to draft-roadmap-rfc: that skill writes an RFC from current roadmap data; this one applies an RFC back to the roadmap.
Read first:
gh-issue-sync skill — commands and file formatdue_on) before assigning issues..github/labels.json), milestone, and project membership via issue frontmatter; set project custom fields on Wagtail public roadmap after push.TBC rather than guessing.draft-roadmap-rfc reference data sources).gh-issue-sync push --dry-run output, and a report.Detect from context or ask the user:
rfc-<NNN>.md, or latest merged roadmap-labelled PR in wagtail/rfcs (raw: https://raw.githubusercontent.com/wagtail/rfcs/refs/heads/main/text/<NNN>-roadmap-updates.md; fall back to PR head if unmerged).Same sources as draft-roadmap-rfc: .issues/open/ and .issues/closed/, .issues/.sync/milestones.json, gh project item-list 16 --owner wagtail.
Local issue files do not include project custom fields (Size, Status, Start date, Target date). Fetch current values from the project; set changes with gh project field-list / gh project item-edit after push. See CONTRIBUTING for how milestone, Status, and Start date relate.
due_on, and whether already applied or pending user approval).T… temp ID), title, milestone, size, strategic theme, labels.TBC and why.Follow gh-issue-sync skill (report if uninstalled):
gh-issue-sync init --owner wagtail --repo roadmap # if needed
gh-issue-sync pull --all
From the RFC version number and release section headings (step 3 parses items in full), list required milestone titles (vX.Y per section; Future should already exist).
Compare against .issues/.sync/milestones.json or:
gh api repos/wagtail/roadmap/milestones --jq '.[] | select(.state=="open") | {number, title, due_on}'
Derive each release milestone's due_on from the RFC section date and the release schedule. Wagtail ships in Feb / May / Aug / Nov.
Create missing milestones before drafting issues (so due_on is set correctly):
gh api repos/wagtail/roadmap/milestones -f title='v7.5' -f due_on='2026-08-03T00:00:00Z'
Update existing milestones when the RFC date differs from due_on:
gh api -X PATCH repos/wagtail/roadmap/milestones/<number> -f due_on='2026-08-03T00:00:00Z'
gh-issue-sync push can create a milestone from issue frontmatter, but without a due date — prefer explicit creation above.
After creating or updating milestones, refresh local cache:
gh-issue-sync pull --all
Include milestone commands in the report. Do not run create/update commands unless the user asks (same as issue push).
Read the RFC against docs/rfc-template.md section layout. For each ### item under release sections, classify:
| RFC pattern | Operation |
|---|---|
### [Title](…/issues/N) | Update / Reschedule #N |
### Title (no link) | Create (match title against .issues/ first — may already exist) |
| Rename / move instructions on a linked item | Update title / Reschedule milestone |
## Proposed roadmap items to close | Close |
| Previous-release row: Done + "follow-ups on the roadmap" | Flag — follow-up is usually a separate RFC item |
Extract per item: title, Size: from RFC (or TBC), Strategic theme: from RFC (or TBC), target milestone from the section (vX.Y or Future), body content below the heading.
Cross-check release dates with .issues/.sync/milestones.json and the release schedule.
Diff against synced local files; skip items that already match.
Structure and tone: docs/item-template.md, docs/style-guide.md. Labels: .github/labels.json only.
Frontmatter mapping (see gh-issue-sync skill):
| Item template | Issue frontmatter | Set on project after push |
|---|---|---|
title | title | — |
labels | labels | — |
strategic_theme | — | Strategic theme |
release | milestone | Status |
size | — | Size |
Always set projects: [Wagtail public roadmap]. Derive Status, Start date, and Target date from milestone metadata per CONTRIBUTING.
Creates — gh-issue-sync new "Title" --edit or write .issues/open/T…-slug.md (temp ID prefix required).
Updates — edit .issues/open/<N>-*.md; patch only what the RFC changes.
Closes — gh-issue-sync close <N> --reason completed|not_planned.
Comments on push — .issues/open/<N>.comment.md (gh-issue-sync skill).
Review with gh-issue-sync status, gh-issue-sync diff <N>, gh-issue-sync push --dry-run. Do not push unless the user asks.
After push, new items appear on project 16. Look up item and field IDs at runtime:
gh project item-list 16 --owner wagtail --format json --limit 300
gh project field-list 16 --owner wagtail --format json
gh project item-edit --id <item-id> --project-id <project-id> --field-id <field-id> ...
One field per item-edit invocation. Plan commands in the report; run after push when real issue numbers exist.
List milestone commands, created/edited file paths, the operations table, dry-run output, pending project field commands, and suggested next steps: milestones → review → push → project fields → verify board → update wagtail.org.