From 82105107155cf74b8051299786e2e46778683a42 Mon Sep 17 00:00:00 2001 From: Manfred Riem <15701806+mnriem@users.noreply.github.com> Date: Tue, 6 Oct 2026 09:49:06 -0500 Subject: [PATCH 1/2] chore(triage): prioritize bundle submissions Assisted-by: GitHub Copilot (model: GPT-5.6 Sol, autonomous) Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- .github/ISSUE_TEMPLATE/bundle_submission.yml | 4 ++-- docs/reference/bundles.md | 8 ++++++++ tests/test_github_workflows.py | 11 ++++++++++- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bundle_submission.yml b/.github/ISSUE_TEMPLATE/bundle_submission.yml index 82bd0ef9e3..0595b8c60b 100644 --- a/.github/ISSUE_TEMPLATE/bundle_submission.yml +++ b/.github/ISSUE_TEMPLATE/bundle_submission.yml @@ -1,7 +1,7 @@ name: Bundle Submission description: Submit your bundle metadata for community catalog validation title: "[Bundle]: Add " -labels: ["enhancement", "needs-triage"] +labels: ["triage-must-have"] body: - type: markdown attributes: @@ -16,7 +16,7 @@ body: - If you host a bundle catalog, test catalog installation with `specify bundle catalog add --id --policy install-allowed` and `specify bundle install ` - If your bundle depends on components from non-default catalogs, document those catalog URLs and test installation from a clean project - **After submitting:** a maintainer applies the `bundle-submission` label during issue triage, which starts the automated catalog validation. You don't need to apply any label or ask for one. + **After submitting:** GitHub automatically applies the `triage-must-have` intake verdict. A maintainer separately applies the `bundle-submission` label during issue triage, which starts the automated catalog validation. You don't need to apply any label or ask for one. - type: input id: bundle-id diff --git a/docs/reference/bundles.md b/docs/reference/bundles.md index d03826eef5..dd8f962333 100644 --- a/docs/reference/bundles.md +++ b/docs/reference/bundles.md @@ -166,6 +166,14 @@ Bundle authors validate and package bundles locally, then host the generated art If your bundle references components from non-default catalogs, document those catalog URLs and test the install path from a clean project with those catalogs added. Community bundle submissions should include that dependency-resolution evidence in the [Bundle Submission](https://github.com/github/spec-kit/issues/new?template=bundle_submission.yml) issue. +### What Happens After You Submit + +1. GitHub applies the `triage-must-have` verdict when the issue is opened through the Bundle Submission form. This intake automation is specific to bundle submissions and does not change the manual triage rubric for other issues. +2. A maintainer reviews the issue during issue triage and applies the separate `bundle-submission` label, which starts the automated catalog validation. On this public repository, contributors cannot apply that label themselves, so there is nothing to label or re-request — the issue simply waits in triage. +3. The automated workflow validates the submission and, when validation passes, updates `bundles/catalog.community.json` and `docs/community/bundles.md` in a draft pull request +4. A maintainer reviews the generated pull request and merges it when approved +5. Your bundle becomes discoverable via `specify bundle search` + ## Manage Catalog Sources Bundles are discovered through a priority-ordered stack of catalog sources (project, user, and built-in scopes). The built-in sources are: diff --git a/tests/test_github_workflows.py b/tests/test_github_workflows.py index d30623abd3..59776b9c64 100644 --- a/tests/test_github_workflows.py +++ b/tests/test_github_workflows.py @@ -515,12 +515,21 @@ def test_preset_submission_form_applies_only_automatic_intake_verdict(): assert "preset-submission" not in preset_form["labels"] +def test_bundle_submission_form_applies_only_automatic_intake_verdict(): + forms_dir = REPO_ROOT / ".github" / "ISSUE_TEMPLATE" + bundle_form = yaml.safe_load( + (forms_dir / "bundle_submission.yml").read_text(encoding="utf-8") + ) + + assert bundle_form["labels"] == ["triage-must-have"] + assert "bundle-submission" not in bundle_form["labels"] + + def test_other_issue_forms_do_not_apply_automatic_intake_verdict(): forms_dir = REPO_ROOT / ".github" / "ISSUE_TEMPLATE" for form_name in ( "agent_request.yml", "bug_report.yml", - "bundle_submission.yml", "feature_request.yml", ): form = yaml.safe_load((forms_dir / form_name).read_text(encoding="utf-8")) From c7180d961e6be833fabd9c8aefee00620f6d4532 Mon Sep 17 00:00:00 2001 From: Manfred Riem <15701806+mnriem@users.noreply.github.com> Date: Tue, 6 Oct 2026 12:45:27 -0500 Subject: [PATCH 2/2] docs: clarify shared submission triage Assisted-by: GitHub Copilot (model: GPT-5.6 Sol, autonomous) Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --- docs/reference/bundles.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/reference/bundles.md b/docs/reference/bundles.md index dd8f962333..613d4e0564 100644 --- a/docs/reference/bundles.md +++ b/docs/reference/bundles.md @@ -168,7 +168,7 @@ If your bundle references components from non-default catalogs, document those c ### What Happens After You Submit -1. GitHub applies the `triage-must-have` verdict when the issue is opened through the Bundle Submission form. This intake automation is specific to bundle submissions and does not change the manual triage rubric for other issues. +1. GitHub applies the `triage-must-have` verdict when the issue is opened through the Bundle Submission form. Bundle submissions join extension and preset submissions in using this intake automation; the manual triage rubric for other issues remains unchanged. 2. A maintainer reviews the issue during issue triage and applies the separate `bundle-submission` label, which starts the automated catalog validation. On this public repository, contributors cannot apply that label themselves, so there is nothing to label or re-request — the issue simply waits in triage. 3. The automated workflow validates the submission and, when validation passes, updates `bundles/catalog.community.json` and `docs/community/bundles.md` in a draft pull request 4. A maintainer reviews the generated pull request and merges it when approved