Skip to content

XS✔ ◾ Dry run for Backlog Cleanup — cluster YakShaver PBIs into smaller focused epics and detect duplicates#760

Open
yaqi-lyu wants to merge 11 commits into
mainfrom
feature/epic-cleanup-yakshaver-workflow
Open

XS✔ ◾ Dry run for Backlog Cleanup — cluster YakShaver PBIs into smaller focused epics and detect duplicates#760
yaqi-lyu wants to merge 11 commits into
mainfrom
feature/epic-cleanup-yakshaver-workflow

Conversation

@yaqi-lyu

@yaqi-lyu yaqi-lyu commented Mar 9, 2026

Copy link
Copy Markdown
Member

Summary

  • Generalises trigger — two workflow_dispatch inputs (source_repos, target_repo) replace the three hardcoded source epics. Default covers Teams (SSW.YakShaver), Desktop (SSW.YakShaver.Desktop), and 360 (SSW.YakShaver360).
  • Switches to dry-run only: no epic creation, no sub-issue linking, no source-epic comments. The workflow now produces a single "Dry-Run Plan" report issue in the target repo for a human to review and tick off before any execution.

What the workflow now does

  1. Scans each repo in source_repos for issues of type = Epic, open, with sub-issue progress < 100%.
  2. For each qualifying epic, reads all sub-issues (open + closed) including full bodies.
  3. Clusters PBIs across repos into themed smaller epics, product-tagged (teams / desktop / 360 / shared).
  4. Scans the whole backlog for duplicate candidates: open issues that overlap with another open or closed issue anywhere across the three repos.
  5. Suggests source epics that could be closed or archived.
  6. Creates one 🧹 Dry-Run Plan — YakShaver Backlog Cleanup issue in target_repo summarising all of the above with a confirmation checklist for the human to review before execution.

safe-outputs

  • create-issue: max 1 (the report)
  • link-sub-issue: removed
  • add-comment: removed

yaqi-lyu and others added 2 commits March 9, 2026 17:11
Adds a GitHub Agentic Workflow to reorganise three large YakShaver epics:
- ✨ YakShaver Agent 2.0 (SSW.YakShaver#2811)
- ✨ YakShaver Desktop App (SSW.YakShaver.Desktop#677)
- ♻️ Auth Migration (SSW.YakShaver#3494)

The workflow clusters open PBIs into smaller, focused sub-epics, all
created in SSWConsulting/SSW.YakShaver.Desktop for centralised tracking:
- 🔌 MCP Integration / 🏗️ Core Infrastructure (Agent 2.0)
- 🐛 Bug Fixes / ✨ Features & UX / 🏗️ Platform & Infrastructure (Desktop)
- ♻️ Scope 1: Enterprise Auth / 🌐 Scope 2: Extended Providers (Auth)

The workflow uses the GitHub MCP to read issues cross-repo and posts
reorganisation summaries on each original epic with CLI commands for
completing the sub-issue re-linking.

Requires: GH_AW_CROSS_REPO_PAT secret with read/write access to both
SSWConsulting/SSW.YakShaver and SSWConsulting/SSW.YakShaver.Desktop.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ng, all PBIs, progress tracking

Key changes from initial draft:
- Read ALL sub-issues (open + closed), not just open ones
- Cluster PBIs holistically across all three epics; Desktop App + Agent 2.0
  PBIs sharing the same theme go into the same new smaller epic
- Target 10-20 PBIs per cluster (5-8 total) — coarser, fewer epics
- All-closed clusters are acceptable; group by theme not by state
- New epic body has a full ✅/🔲 progress table per PBI with source repo
- Comment on each original epic shows only relevant new epics + all PBI assignments

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings March 9, 2026 09:40
@github-actions

github-actions Bot commented Mar 9, 2026

Copy link
Copy Markdown
Contributor

PR Metrics

Thanks for keeping your pull request small.
Thanks for adding tests.

Lines
Product Code -
Test Code -
Subtotal -
Ignored Code 2,048
Total 2,048

Metrics computed by PR Metrics. Add it to your Azure DevOps and GitHub PRs!

@github-actions github-actions Bot changed the title feat: Epic Cleanup — cluster YakShaver PBIs into smaller focused epics XS✔ ◾ feat: Epic Cleanup — cluster YakShaver PBIs into smaller focused epics Mar 9, 2026

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.

Pull request overview

Adds a GitHub Agentic Workflow to automatically cluster PBIs from three large YakShaver epics into 5–8 smaller, theme-focused epics (created in SSWConsulting/SSW.YakShaver.Desktop) and to post summary comments back on the original epics.

Changes:

  • Introduces an editable gh-aw workflow prompt file describing the epic clustering + issue/comment creation process.
  • Adds the compiled/locked GitHub Actions workflow generated from the prompt file.
  • Updates .gitattributes to treat *.lock.yml workflows as generated and resolve merges with ours.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.

File Description
.github/workflows/epic-cleanup-yakshaver.md Defines the agent instructions, clustering rules, and output templates for new epics + summary comments.
.github/workflows/epic-cleanup-yakshaver.lock.yml Compiled gh-aw workflow that runs the agent, gates outputs via Safe Outputs, and posts results.
.gitattributes Marks *.lock.yml workflows as generated and sets merge strategy.

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

Comment thread .github/workflows/epic-cleanup-yakshaver.md Outdated
Comment thread .github/workflows/epic-cleanup-yakshaver.md Outdated
Comment thread .github/workflows/backlog-cleanup-yakshaver.lock.yml
Comment thread .github/workflows/epic-cleanup-yakshaver.lock.yml

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 61bddf21de

ℹ️ 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".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .github/workflows/epic-cleanup-yakshaver.md Outdated
Comment thread .github/workflows/epic-cleanup-yakshaver.md Outdated
@github-actions

github-actions Bot commented Mar 9, 2026

Copy link
Copy Markdown
Contributor

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.760.1773049232

1. Tool schema alignment — use create_issue (not create-issue); remove
   unsupported fields issue_type and target-repo from agent instructions;
   agent only provides title, body, labels

2. 50-link comment limit — replace Markdown links with plain
   SSWConsulting/org.repo#number cross-references in add_comment template;
   cross-repo commenting on SSW.YakShaver issues documented as manual step

3. Remove progress table — dropped ✅/🔲 PBI table from new epic body;
   GitHub sub-issue progress bar covers this natively

4. GH_AW_CROSS_REPO_PAT validation — added pre-agent steps: block that
   checks for the secret early; if missing, posts a warning comment on
   Desktop epic #677 via GITHUB_TOKEN then exits 1 (fail fast)

5. ubuntu-slim runner — patch activation and safe_outputs jobs from
   ubuntu-slim to ubuntu-latest in lock file; add runs-on: ubuntu-latest
   to frontmatter for agent job

Also: add title-prefix [YakShaver 2.0] and target-repo to safe-outputs
frontmatter so create_issue calls always land in SSW.YakShaver.Desktop
with the correct prefix automatically

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions

github-actions Bot commented Mar 9, 2026

Copy link
Copy Markdown
Contributor

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.760.1773050380

yaqi-lyu and others added 2 commits March 9, 2026 18:20
- Add bash: true tool so agent can write per-epic comment files
  to /tmp/gh-aw/comments/ during its run
- Step 4 now has agent write comment bodies for SSW.YakShaver
  epics #2811 and #3494 to files AND call add_comment for #677
- Add post-steps: job that reads the files and posts comments to
  SSWConsulting/SSW.YakShaver using GH_AW_CROSS_REPO_PAT
- Add pre-step to mkdir -p /tmp/gh-aw/comments
- post-steps skips gracefully if agent did not write a file
- Remove 'manually post summary' note — now fully automated
- Patch ubuntu-slim to ubuntu-latest in lock file

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Pins GitHub Actions used by gh-aw compiled workflows to exact commit SHAs
to prevent tag-mutable supply chain attacks.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions

github-actions Bot commented Mar 9, 2026

Copy link
Copy Markdown
Contributor

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.760.1773051769

- Split '✨ Features & UX' into '✨ Features' and '🎨 UX Improvements'
- Merge '♻️ Auth Scope 1' and '🌐 Auth Scope 2' into single '♻️ Auth Migration' cluster

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@github-actions

Copy link
Copy Markdown
Contributor

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.760.1773369459

@github-actions

Copy link
Copy Markdown
Contributor

Hi there!

This PR has been here a while.

Did you know you should avoid merge debt?

Please review and merge or close.

Thanks!

@github-actions github-actions Bot added the Stale label Mar 15, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.760.1774000821

@github-actions github-actions Bot removed the Stale label Mar 22, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Hi there!

This PR has been here a while.

Did you know you should avoid merge debt?

Please review and merge or close.

Thanks!

@github-actions github-actions Bot added the Stale label Mar 29, 2026
@yaqi-lyu yaqi-lyu changed the title XS✔ ◾ feat: Epic Cleanup — cluster YakShaver PBIs into smaller focused epics XS✔ ◾ Dry run for Backlog Cleanup — cluster YakShaver PBIs into smaller focused epics and detect duplicates Apr 23, 2026
@github-actions

Copy link
Copy Markdown
Contributor

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.760.1776925765

@github-actions github-actions Bot removed the Stale label Apr 26, 2026
Add a read-only dry-run backlog audit for YakShaver (Run ID 2026-04-27-165630). The new markdown documents scan metadata and findings across SSW.YakShaver, SSW.YakShaver.Desktop and SSW.YakShaver360: 421 PBIs reviewed (120 open / 301 closed), 20 in-scope epics, 40 duplicate candidates flagged, and recommendations to consolidate PBIs into smaller epics (clusters 1–17) plus 6 source epics suggested for closure (+2 thin candidates). No GitHub issues were modified; this file is for human review.
@github-actions

Copy link
Copy Markdown
Contributor

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.760.1777283638

@tomek-i

tomek-i commented Apr 29, 2026

Copy link
Copy Markdown
Member

Did the prompt take into account that Epics cannot have more than 100 issues attached to them?

The consolidation takes multiple "areas" into a single epic eg:
2. YakShaver Desktop App — Onboarding, OAuth, Distribution & Reliability
and others in that list.

Or is it Epic and then split into Sub Epics and then sub epics have then the acutal issues eg:

2. YakShaver Desktop App — Onboarding, OAuth, Distribution & Reliability
         |
         |------- Onboarding
         |              |---- Issue 1
         |              |---- Issue 2
         |              |---  etc.
         |
         |------- OAuth

etc.

That would make sense because then we don't hit the cap of 100 sub items

@github-actions

github-actions Bot commented May 3, 2026

Copy link
Copy Markdown
Contributor

Hi there!

This PR has been here a while.

Did you know you should avoid merge debt?

Please review and merge or close.

Thanks!

@github-actions github-actions Bot added the Stale label May 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants