Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Jan 23, 2026

Campaign orchestrator was using campaign:security-alert-burndown label convention, yielding 0 discovery matches. Discovery script generates and searches for z_campaign_<campaign-id> labels, and worker workflows tag items with this prefix.

Changes

  • Campaign spec (.github/workflows/security-alert-burndown.campaign.md): Updated tracker-label from campaign:security-alert-burndownz_campaign_security-alert-burndown

  • Validation (pkg/campaign/validation.go): Enforces z_campaign_ prefix instead of campaign: prefix

    // Before: validated "campaign:" prefix
    if !strings.HasPrefix(trimmedLabel, "campaign:") {
    
    // After: validates "z_campaign_" prefix matching auto-generated label format
    expectedLabel := fmt.Sprintf("z_campaign_%s", strings.ToLower(strings.ReplaceAll(spec.ID, "_", "-")))
    if !strings.HasPrefix(trimmedLabel, "z_campaign_") {
  • Tests (pkg/campaign/validation_test.go): Added TestValidateSpec_TrackerLabelFormat covering prefix validation

  • Lock file: Recompiled with correct GH_AW_TRACKER_LABEL: z_campaign_security-alert-burndown

Discovery mechanism in actions/setup/js/campaign_discovery.cjs line 329 already generates campaign labels as z_campaign_${campaignId.toLowerCase().replace(/[_\s]+/g, "-")}, and worker workflows throughout the codebase use this convention.

Original prompt

Campaign orchestrator needs to stop using GH_AW_TRACKER_LABEL: campaign:security-alert-burndown (which yields 0 label-based matches) and instead use the campaign’s actual label convention (z_campaign_security-alert-burndown).


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI and others added 2 commits January 23, 2026 04:32
- Update security-alert-burndown.campaign.md tracker-label from campaign:security-alert-burndown to z_campaign_security-alert-burndown
- Update validation in pkg/campaign/validation.go to enforce z_campaign_ prefix instead of campaign: prefix
- Recompile campaign workflow to regenerate lock file with correct environment variable

Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
- Added comprehensive tests for tracker label format validation
- Tests verify z_campaign_ prefix requirement
- Tests ensure old campaign: prefix is rejected
- All tests passing

Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
@mnkiefer mnkiefer marked this pull request as ready for review January 23, 2026 04:37
Copilot AI changed the title [WIP] Update campaign label convention from GH_AW_TRACKER_LABEL Fix campaign orchestrator tracker label convention: campaign: → z_campaign_ Jan 23, 2026
Copilot AI requested a review from mnkiefer January 23, 2026 04:41
@mnkiefer mnkiefer merged commit 1151c12 into main Jan 23, 2026
83 checks passed
@mnkiefer mnkiefer deleted the copilot/update-campaign-label-convention branch January 23, 2026 04:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants