ci: label taxonomy, AI/Copilot automation, and split release workflows#80
Merged
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR modernizes the repository’s GitHub automation to match the AmbleKit family conventions, introducing AI-assisted issue triage, consolidated PR labeling, Copilot review requests, and a split release/publishing workflow set (including per-platform manual publishing and README → Modrinth description sync).
Changes:
- Added an AI triage workflow that classifies new/reopened issues, applies taxonomy labels, sets issue metadata, and posts a triage comment.
- Consolidated PR labeling into path-based subsystem/change labels plus an automated size labeler.
- Replaced the legacy single publish workflow with separate release + per-platform publishing workflows and a Modrinth description sync workflow.
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 9 comments.
Show a summary per file
| File | Description |
|---|---|
| .github/workflows/sync_descriptions.yml | Adds README → Modrinth project body sync workflow. |
| .github/workflows/publish.yml | Removes legacy monolithic publish workflow. |
| .github/workflows/publish_release.yml | Adds release-published + manual dispatch workflow for GitHub/Modrinth/CurseForge publishing. |
| .github/workflows/publish_modrinth.yml | Adds manual dispatch workflow to publish to Modrinth only. |
| .github/workflows/publish_curseforge.yml | Adds manual dispatch workflow to publish to CurseForge only. |
| .github/workflows/pr-labeler.yml | Consolidates PR labeling with pinned actions and adds size labeling. |
| .github/workflows/issue-triage.yml | Introduces GitHub Models-based automated issue triage and labeling. |
| .github/workflows/copilot-pr-review.yml | Requests a Copilot code review automatically for non-draft PRs. |
| .github/workflows/all-labeler-untriaged.yml | Scopes “Untriaged” labeling to PRs only. |
| .github/labeler.yml | Reworks path globs to match the repo’s package layout and taxonomy. |
| .github/ISSUE_TEMPLATE/3-proposal.md | Adds a proposal issue template that auto-labels proposals. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
…changelog flag, issues perm, grammar)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Brings this repo's GitHub automation in line with the AmbleKit family (AIT / modkit) and reworks publishing after the fakeplayer layout.
Labels
Created/updated the full AmbleKit label taxonomy on the repo (
T:/S:/P:/D:/C:/A:/size//Issue:/Intent:/Branch:plusX: Proposal). Area (A:) labels are tailored to this mod (Suits, Powers, Entities, Datagen, Admin Tooling, Core Tech, Build, Docs). Default GitHub labels left untouched.Proposal system
ISSUE_TEMPLATE/3-proposal.md- team proposal template (mirrors the AIT one), auto-labelsX: Proposal.Automation (from modkit)
issue-triage.yml- AI triage via GitHub Models. Classifies new issues, applies labels, sets issue type + org Priority/Effort fields, and now also comments a likely cause (bugs) / recommended implementation (features) insight. Falls back toS: Untriagedif the model is unavailable.pr-labeler.yml- consolidated path-based area labels + size labels (pinned action SHAs).labeler.yml- rewritten path globs for this mod's package layout.all-labeler-untriaged.yml- scoped to PRs only (issue triage now owns the issue side, avoiding a double-label race).Copilot review
copilot-pr-review.yml- requests a Copilot code review on newly opened / ready-for-review PRs viagh pr edit --add-reviewer @copilot(REST reviewers API doesn't accept Copilot). No-ops on drafts or if code review isn't enabled for the plan.Release workflows (from fakeplayer, single-loader Fabric)
Replaces the old single
publish.ymlwith:publish_release.yml- GitHub + Modrinth + CurseForge on release published / dispatch.publish_curseforge.yml,publish_modrinth.yml- per-platform manual dispatch.sync_descriptions.yml- syncsREADME.mdto the Modrinth project body.All adapted to this repo: single Fabric build (no forge subproject),
runDatagentask,mod_version/minecraft_versionprops, and this project's real CurseForge (871545) / Modrinth (VPum1CA1) IDs.Required secrets
CURSEFORGE_TOKEN,MODRINTH_TOKENfor publishing;DEV_BUILDS(already used by devbuilds). Optional repo varsPRIORITY_FIELD_ID/EFFORT_FIELD_IDoverride the org issue-field defaults.