Skip to content

labels: remove duplicate ViaQ/vector tide/merge-method-squash label#79264

Closed
redhat-chai-bot wants to merge 1 commit into
openshift:mainfrom
redhat-chai-bot:chai-bot/fix-label-sync-duplicate
Closed

labels: remove duplicate ViaQ/vector tide/merge-method-squash label#79264
redhat-chai-bot wants to merge 1 commit into
openshift:mainfrom
redhat-chai-bot:chai-bot/fix-label-sync-duplicate

Conversation

@redhat-chai-bot
Copy link
Copy Markdown
Contributor

@redhat-chai-bot redhat-chai-bot commented May 13, 2026

Problem

PR #78874 added a repo-specific tide/merge-method-squash label for ViaQ/vector in the repos: section of _labels.yaml. However, this label is already defined in the default: section and applies to all repos globally.

The label-sync tool validates that no label name appears in both default and a repo-specific section. This duplicate causes the config validation to fail with:

invalid config: duplicate label tide/merge-method-squash at ViaQ/vector.tide/merge-method-squash and default.tide/merge-method-squash

The periodic-label-sync job has been failing every week since January 21, 2026, preventing label syncing for ALL configured orgs (openshift, openshift-eng, openshift-priv, cri-o, operator-framework, etc.).

Fix

Remove the redundant ViaQ/vector repo-specific entry. The tide/merge-method-squash label will continue to be available on ViaQ/vector (and all other repos) via the default configuration — so the original intent of PR #78874 is fully preserved.

Impact

Once merged, the postsubmit branch-ci-openshift-release-main-label-sync job will automatically run and restore label syncing for all configured orgs.

/cc @jcantrill

Summary

This PR fixes a validation error in the Prow label configuration by removing a duplicate label definition.

Problem

PR #78874 had added a repo-specific tide/merge-method-squash label for the ViaQ/vector repository in the repos: section of _labels.yaml. However, this same label already exists in the default: section, which applies globally to all repositories. The label-sync tool rejects configurations where the same label appears in both sections, causing this validation error:

invalid config: duplicate label tide/merge-method-squash at ViaQ/vector.tide/merge-method-squash and default.tide/merge-method-squash

As a result, the periodic-label-sync job has been failing weekly since January 21, 2026, preventing label syncing for all configured organizations.

Solution

The PR removes the redundant ViaQ/vector-specific entry for tide/merge-method-squash. The label remains available for ViaQ/vector (and all other repositories) through the global default configuration.

Impact

  • Resolves the validation error that has been blocking label synchronization
  • The periodic-label-sync job will resume functioning, allowing label synchronization across all configured organizations
  • No functional change to ViaQ/vector's actual label availability—the tide/merge-method-squash label continues to apply via the default configuration

@openshift-ci openshift-ci Bot requested a review from jcantrill May 13, 2026 17:58
@openshift-ci openshift-ci Bot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label May 13, 2026
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 13, 2026

Walkthrough

This pull request adds a single repo-specific label configuration to Prow's label definitions. The new allow-automatic-merge label is added for the rh-ecosystem-edge/recert repository with color 0ffa16, targeting pull requests, and is intended to allow Tide to automatically merge PRs from trusted authors.

Changes

Prow Label Configuration

Layer / File(s) Summary
Repo-specific allow-automatic-merge label
core-services/prow/02_config/_labels.yaml
New label entry for rh-ecosystem-edge/recert defining allow-automatic-merge with target prs, color 0ffa16, and addedBy label, along with a descriptive message for Tide integration.

🎯 1 (Trivial) | ⏱️ ~2 minutes

🚥 Pre-merge checks | ✅ 11 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Title check ⚠️ Warning The PR title states 'remove duplicate ViaQ/vector tide/merge-method-squash label' but the actual change adds a new 'allow-automatic-merge' label for rh-ecosystem-edge/recert, not removing a ViaQ/vector label. Update the title to accurately reflect the actual changes: adding an 'allow-automatic-merge' label for rh-ecosystem-edge/recert repository, or verify the raw_summary matches the PR objectives.
✅ Passed checks (11 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed The custom check is for Ginkgo test naming conventions in Go test files. This PR only modifies a YAML configuration file (_labels.yaml) with no test code changes, making the check not applicable.
Test Structure And Quality ✅ Passed Custom check requires reviewing Ginkgo test code quality. This PR contains only YAML configuration file changes with no test code. Check is not applicable.
Microshift Test Compatibility ✅ Passed This PR modifies only _labels.yaml (Prow config). The MicroShift Test Compatibility check applies only to Ginkgo e2e tests. No Ginkgo tests are present in this PR.
Single Node Openshift (Sno) Test Compatibility ✅ Passed Not applicable. This PR modifies only YAML label configuration files, not Ginkgo e2e tests. The SNO compatibility check applies only to new e2e tests.
Topology-Aware Scheduling Compatibility ✅ Passed Check not applicable. PR modifies only a Prow label configuration file with metadata (color, description, target), not deployment manifests, operator code, or scheduling constraints.
Ote Binary Stdout Contract ✅ Passed PR modifies _labels.yaml (config file only). OTE stdout check applies to binary code. Configuration changes need no validation.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed The PR does not add any new Ginkgo e2e tests. The changes are configuration-only (YAML files and utility test files without Ginkgo patterns). The IPv6/disconnected network check is not applicable.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
⚔️ Resolve merge conflicts
  • Resolve merge conflict in branch chai-bot/fix-label-sync-duplicate

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@redhat-chai-bot, pj-rehearse: unable to determine affected jobs. This could be due to a branch that needs to be rebased. ERROR:

couldn't prepare candidate: couldn't rebase candidate onto d558e0fd9507540cfb29b2802e7cfd8011702eb6 due to conflicts
Interacting with pj-rehearse

Comment: /pj-rehearse to run up to 5 rehearsals
Comment: /pj-rehearse skip to opt-out of rehearsals
Comment: /pj-rehearse {test-name}, with each test separated by a space, to run one or more specific rehearsals
Comment: /pj-rehearse more to run up to 10 rehearsals
Comment: /pj-rehearse max to run up to 25 rehearsals
Comment: /pj-rehearse auto-ack to run up to 5 rehearsals, and add the rehearsals-ack label on success
Comment: /pj-rehearse list to get an up-to-date list of affected jobs
Comment: /pj-rehearse abort to abort all active rehearsals
Comment: /pj-rehearse network-access-allowed to allow rehearsals of tests that have the restrict_network_access field set to false. This must be executed by an openshift org member who is not the PR author

Once you are satisfied with the results of the rehearsals, comment: /pj-rehearse ack to unblock merge. When the rehearsals-ack label is present on your PR, merge will no longer be blocked by rehearsals.
If you would like the rehearsals-ack label removed, comment: /pj-rehearse reject to re-block merging.

@openshift-ci openshift-ci Bot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label May 13, 2026
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 13, 2026

Hi @redhat-chai-bot. Thanks for your PR.

I'm waiting for a openshift member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work.

Tip

We noticed you've done this a few times! Consider joining the org to skip this step and gain /lgtm and other bot rights. We recommend asking approvers on your previous PRs to sponsor you.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci Bot commented May 13, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: redhat-chai-bot
Once this PR has been reviewed and has the lgtm label, please assign danilo-gemoli for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@core-services/prow/02_config/_labels.yaml`:
- Around line 1286-1292: The PR description and the actual change are
inconsistent: the diff adds a new label "allow-automatic-merge" under
rh-ecosystem-edge/recert (labels block with name allow-automatic-merge) but the
objective claims removing a duplicate tide/merge-method-squash label for
ViaQ/vector; clarify intent and make the code match it—either update this patch
to remove the duplicate tide/merge-method-squash entry under the ViaQ/vector
repository (search for repository key "ViaQ/vector" and label name
"tide/merge-method-squash" and remove the duplicate), or change the PR
description to state that you are adding the allow-automatic-merge label for
rh-ecosystem-edge/recert (keep the labels block as-is) and ensure no other files
need simultaneous edits; also verify periodic-label-sync validation locally
after making the aligned change.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 5dc3ed6a-59b0-4a97-ba7f-0090e909e29d

📥 Commits

Reviewing files that changed from the base of the PR and between d558e0f and a2ca4d0.

📒 Files selected for processing (1)
  • core-services/prow/02_config/_labels.yaml

Comment on lines +1286 to +1292
rh-ecosystem-edge/recert:
labels:
- color: 0ffa16
description: Allows Tide to automatically merge PRs from trusted authors
name: allow-automatic-merge
target: prs
addedBy: label
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.

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Description: Check if ViaQ/vector tide/merge-method-squash exists in the current file

# Search for ViaQ/vector repo configuration
echo "=== Searching for ViaQ/vector configuration ==="
rg -n -A 20 'ViaQ/vector:' core-services/prow/02_config/_labels.yaml

# Search for any tide/merge-method-squash under repos section
echo -e "\n=== Searching for repo-specific tide/merge-method-squash labels ==="
rg -n -B 5 'tide/merge-method-squash' core-services/prow/02_config/_labels.yaml | rg -A 5 'repos:'

Repository: openshift/release

Length of output: 178


PR objectives do not match actual code changes; critical inconsistency requires clarification.

The PR objectives describe removing a duplicate tide/merge-method-squash label for ViaQ/vector to fix failing periodic-label-sync validation errors. The actual code changes shown (lines 1286-1292) add a new allow-automatic-merge label configuration for rh-ecosystem-edge/recert.

Verification confirms no ViaQ/vector repository configuration or tide/merge-method-squash labels exist in the file. If the PR intends to address the label-sync failure mentioned in the objectives, these visible changes do not accomplish that. The PR description and actual code changes appear misaligned—either the objectives are incorrect, the changes are incomplete, or this may be the wrong file or branch.

Please clarify which change this PR is intended to make.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@core-services/prow/02_config/_labels.yaml` around lines 1286 - 1292, The PR
description and the actual change are inconsistent: the diff adds a new label
"allow-automatic-merge" under rh-ecosystem-edge/recert (labels block with name
allow-automatic-merge) but the objective claims removing a duplicate
tide/merge-method-squash label for ViaQ/vector; clarify intent and make the code
match it—either update this patch to remove the duplicate
tide/merge-method-squash entry under the ViaQ/vector repository (search for
repository key "ViaQ/vector" and label name "tide/merge-method-squash" and
remove the duplicate), or change the PR description to state that you are adding
the allow-automatic-merge label for rh-ecosystem-edge/recert (keep the labels
block as-is) and ensure no other files need simultaneous edits; also verify
periodic-label-sync validation locally after making the aligned change.

PR openshift#78874 added a repo-specific tide/merge-method-squash label for
ViaQ/vector, but this label is already defined in the default section
and applied to all repos. The duplicate causes the periodic-label-sync
job to fail with:

  invalid config: duplicate label tide/merge-method-squash at
  ViaQ/vector.tide/merge-method-squash and default.tide/merge-method-squash

The label-sync job has been failing every week since Jan 21, 2026,
preventing label syncing for all configured orgs.

Removing the repo-specific entry fixes the validation error. The
tide/merge-method-squash label will continue to be available on
ViaQ/vector via the default configuration.
@redhat-chai-bot redhat-chai-bot force-pushed the chai-bot/fix-label-sync-duplicate branch from a2ca4d0 to 630b817 Compare May 13, 2026 18:16
@openshift-ci openshift-ci Bot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label May 13, 2026
@redhat-chai-bot
Copy link
Copy Markdown
Contributor Author

Thanks @coderabbitai — you were right. The original branch was based on a stale shallow clone, so the diff was incorrect (it showed an unrelated addition instead of the ViaQ/vector removal).

I've force-pushed a corrected commit based on the current main. The diff now correctly shows the removal of the duplicate ViaQ/vector repo-specific tide/merge-method-squash label entry (7 lines deleted, nothing added).

/pj-rehearse skip

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@redhat-chai-bot: now processing your pj-rehearse request. Please allow up to 10 minutes for jobs to trigger or cancel.

@openshift-merge-bot
Copy link
Copy Markdown
Contributor

@redhat-chai-bot: needs-ok-to-test label found, no rehearsals will be run

@openshift-merge-bot openshift-merge-bot Bot added the rehearsals-ack Signifies that rehearsal jobs have been acknowledged label May 13, 2026
@openshift-merge-bot
Copy link
Copy Markdown
Contributor

[REHEARSALNOTIFIER]
@redhat-chai-bot: no rehearsable tests are affected by this change

Note: If this PR includes changes to step registry files (ci-operator/step-registry/) and you expected jobs to be found, try rebasing your PR onto the base branch. This helps pj-rehearse accurately detect changes when the base branch has moved forward.

Interacting with pj-rehearse

Comment: /pj-rehearse to run up to 5 rehearsals
Comment: /pj-rehearse skip to opt-out of rehearsals
Comment: /pj-rehearse {test-name}, with each test separated by a space, to run one or more specific rehearsals
Comment: /pj-rehearse more to run up to 10 rehearsals
Comment: /pj-rehearse max to run up to 25 rehearsals
Comment: /pj-rehearse auto-ack to run up to 5 rehearsals, and add the rehearsals-ack label on success
Comment: /pj-rehearse list to get an up-to-date list of affected jobs
Comment: /pj-rehearse abort to abort all active rehearsals
Comment: /pj-rehearse network-access-allowed to allow rehearsals of tests that have the restrict_network_access field set to false. This must be executed by an openshift org member who is not the PR author

Once you are satisfied with the results of the rehearsals, comment: /pj-rehearse ack to unblock merge. When the rehearsals-ack label is present on your PR, merge will no longer be blocked by rehearsals.
If you would like the rehearsals-ack label removed, comment: /pj-rehearse reject to re-block merging.

@redhat-chai-bot
Copy link
Copy Markdown
Contributor Author

Closing in favor of a proper git revert — see the replacement PR.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 13, 2026

@redhat-chai-bot Thanks for the update! That makes sense — a stale shallow clone can definitely produce misleading diffs. The corrected commit (7 lines deleted, nothing added) aligns perfectly with the PR's stated intent: removing the redundant ViaQ/vector repo-specific tide/merge-method-squash entry so that periodic-label-sync can resume functioning correctly.

I'll re-review the updated diff now.

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. rehearsals-ack Signifies that rehearsal jobs have been acknowledged

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant