feat: split-style tracking issues and deferred creation for catalog-destined test cases#33
Merged
ChristopherJHart merged 4 commits intomasterfrom Feb 6, 2026
Conversation
…-destined test cases For catalog-destined test cases, project issues should only be created after a catalog PR exists so the issue can reference it. This prevents orphaned issues from being created when test cases have no catalog PR yet. Changes: - requires_issue_creation now checks metadata.catalog.destined and requires metadata.catalog_tracking.pr_number before allowing issue creation for catalog-destined test cases - Reorder process_test_requirements loop: catalog PR creation runs before issue creation so both happen in the same CI run - Add unit tests for new catalog-destined gating behavior - Add integration tests for single-run catalog PR + issue creation Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…st cases For catalog-destined test cases, process_test_requirements now creates tracking issues using tracking_issue.j2 (split style with catalog PR reference and task checklist) instead of tac_issues_body.j2 (collapsed style with test requirement details only). Non-catalog test cases continue to use the collapsed template. Adds create_tracking_issue_for_catalog_test_case() which renders the tracking template from test case metadata, supporting both same-run catalog PRs and catalog PRs from previous runs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
create_catalog_pr_for_test_case now accepts a labels parameter and calls set_labels_on_issue after PR creation, since the GitHub PR creation API does not support labels inline. The process_test_requirements loop passes test case labels through to catalog PR creation. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…alog PRs Catalog PRs now get the "quicksilver" label added and the "script-already-created" label removed before label application. Issue labels are unchanged — they continue to use whatever is defined on the test case. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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.
Summary
tracking_issue.j2) with catalog PR reference and task checklist, instead of the collapsed template (tac_issues_body.j2)process_test_requirementsloop: catalog PR creation → issue creation → project PR creationquicksilver, removesscript-already-created, keeps other labels (e.g.,GenAI)Changes
Commit 1: Defer issue creation until catalog PR exists
requires_issue_creationintest_cases_processor.py: checksmetadata.catalog.destinedand requiresmetadata.catalog_tracking.pr_numberbefore allowing issue creationprocess_test_requirementsintest_requirements.py: catalog PR creation moved before issue creation in the processing loopCommit 2: Wire split-style tracking issue template
create_tracking_issue_for_catalog_test_case()intest_requirements.py: renderstracking_issue.j2from test case metadata, supporting both same-run and previous-run catalog PRs_extract_os_from_catalog_branch(): helper to extract OS from catalog branch name patternfeat/{os}/add-{stem}process_test_requirementsloop branches onmetadata.catalog.destinedto choose split vs collapsed issue templateCommit 3: Apply labels to catalog PRs
create_catalog_pr_for_test_casenow accepts alabelsparameter and callsset_labels_on_issueafter PR creation (the GitHub PR creation API does not support labels inline)process_test_requirementspasses test case labels through to catalog PR creationCommit 4: Transform catalog PR labels
script-already-createdremoved andquicksilveraddedTests
_extract_os_from_catalog_branchcreate_tracking_issue_for_catalog_test_caseTest plan
🤖 AI Generation Metadata