Skip to content

Conversation

bryangingechen
Copy link
Contributor

@bryangingechen bryangingechen commented Jul 27, 2025

Recently the reaction bot on Zulip has been observed to add a reaction and then remove it shortly afterwards (mainly the reactions corresponding to the ready-to-merge and delegated labels). The mechanism seems to be the following:

  • a maintainer writes a comment like "bors merge" (or "bors d+") on a PR that has been maintainer-merge'd
  • zulip_emoji_merge_delegate.yaml and zulip_emoji_merge_delegate_wf.yaml react to this comment and:
    • simultaneously adds the "ready-to-merge" and removes the maintainer-merge label
    • adds the "merge" emoji reaction on Zulip
  • the zulip_emoji_labelling.yaml workflow reacts to the maintainer-merge label being removed, and clears the "merge" emoji as well. See this log (which removes the "delegated" emoji).

We change the zulip_emoji_labelling.yaml workflow so that it passes the current list of labels on the PR to the zulip_emoji_reactions.py script, and also change the script so that it only removes a reaction if the corresponding label is NOT present.

cf. https://leanprover.zulipchat.com/#narrow/channel/345428-mathlib-reviewers/topic/merge.2Fdelegate.20emojis.20bot/near/528289834


Open in Gitpod

@bryangingechen bryangingechen added the CI Modifies the continuous integration setup or other automation label Jul 27, 2025
Copy link

github-actions bot commented Jul 27, 2025

PR summary f5ed73d3f3

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference

Declarations diff

No declarations were harmed in the making of this PR! 🐙

You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>

The doc-module for script/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/technical-debt-metrics.sh pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

@bryangingechen bryangingechen added the awaiting-author A reviewer has asked the author a question or requested changes. label Jul 28, 2025
@bryangingechen bryangingechen removed the awaiting-author A reviewer has asked the author a question or requested changes. label Jul 28, 2025
Copy link
Collaborator

@grunweg grunweg left a comment

Choose a reason for hiding this comment

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

Thanks! First look looks good, just minor comments (and future-proofing).

@grunweg grunweg added the awaiting-author A reviewer has asked the author a question or requested changes. label Aug 1, 2025
@grunweg
Copy link
Collaborator

grunweg commented Aug 1, 2025

Just took a second look again. The bug you described is subtles (yikes!), thanks a lot for finding and fixing it!
I don't see an immediately better solution, and yours is very reasonable - so let's roll with this.
maintainer delegate

Copy link

github-actions bot commented Aug 1, 2025

🚀 Pull request has been placed on the maintainer queue by grunweg.

@leanprover-community-mathlib4-bot leanprover-community-mathlib4-bot added the maintainer-merge A reviewer has approved the changed; awaiting maintainer approval. label Aug 1, 2025
@bryangingechen bryangingechen removed the awaiting-author A reviewer has asked the author a question or requested changes. label Aug 1, 2025
@bryangingechen
Copy link
Contributor Author

This should be ready now, thanks for the reviews!

@bryangingechen bryangingechen requested a review from adomani August 5, 2025 23:53
Copy link
Collaborator

@adomani adomani left a comment

Choose a reason for hiding this comment

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

Thank you for this fix: let's see how it works!

bors merge

@leanprover-community-mathlib4-bot leanprover-community-mathlib4-bot added ready-to-merge This PR has been sent to bors. and removed maintainer-merge A reviewer has approved the changed; awaiting maintainer approval. labels Aug 8, 2025
mathlib-bors bot pushed a commit that referenced this pull request Aug 8, 2025
…ent on the PR (#27570)

Recently the reaction bot on Zulip has been observed to add a reaction and then remove it shortly afterwards (mainly the reactions corresponding to the `ready-to-merge` and `delegated` labels). The mechanism seems to be the following:
- a maintainer writes a comment like "bors merge" (or "bors d+") on a PR that has been `maintainer-merge`'d
- `zulip_emoji_merge_delegate.yaml` and `zulip_emoji_merge_delegate_wf.yaml` react to this comment and:
  - simultaneously adds the "ready-to-merge" and removes the `maintainer-merge` label
  - adds the "merge" emoji reaction on Zulip
- the `zulip_emoji_labelling.yaml` workflow reacts to the `maintainer-merge` label being removed, and clears the "merge" emoji as well. See [this log](https://github.com/leanprover-community/mathlib4/actions/runs/16270158496/job/45935446666#step:5:30) (which removes the "delegated" emoji).

We change the `zulip_emoji_labelling.yaml` workflow so that it passes the current list of labels on the PR to the `zulip_emoji_reactions.py` script, and also change the script so that it only removes a reaction if the corresponding label is NOT present.

cf. https://leanprover.zulipchat.com/#narrow/channel/345428-mathlib-reviewers/topic/merge.2Fdelegate.20emojis.20bot/near/528289834
@mathlib-bors
Copy link
Contributor

mathlib-bors bot commented Aug 8, 2025

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title fix: do not remove reactions if the corresponding label is still present on the PR [Merged by Bors] - fix: do not remove reactions if the corresponding label is still present on the PR Aug 8, 2025
@mathlib-bors mathlib-bors bot closed this Aug 8, 2025
@bryangingechen bryangingechen deleted the bgc-fix-disappearing-emojis branch August 19, 2025 22:17
Paul-Lez pushed a commit to Paul-Lez/mathlib4 that referenced this pull request Aug 23, 2025
…ent on the PR (leanprover-community#27570)

Recently the reaction bot on Zulip has been observed to add a reaction and then remove it shortly afterwards (mainly the reactions corresponding to the `ready-to-merge` and `delegated` labels). The mechanism seems to be the following:
- a maintainer writes a comment like "bors merge" (or "bors d+") on a PR that has been `maintainer-merge`'d
- `zulip_emoji_merge_delegate.yaml` and `zulip_emoji_merge_delegate_wf.yaml` react to this comment and:
  - simultaneously adds the "ready-to-merge" and removes the `maintainer-merge` label
  - adds the "merge" emoji reaction on Zulip
- the `zulip_emoji_labelling.yaml` workflow reacts to the `maintainer-merge` label being removed, and clears the "merge" emoji as well. See [this log](https://github.com/leanprover-community/mathlib4/actions/runs/16270158496/job/45935446666#step:5:30) (which removes the "delegated" emoji).

We change the `zulip_emoji_labelling.yaml` workflow so that it passes the current list of labels on the PR to the `zulip_emoji_reactions.py` script, and also change the script so that it only removes a reaction if the corresponding label is NOT present.

cf. https://leanprover.zulipchat.com/#narrow/channel/345428-mathlib-reviewers/topic/merge.2Fdelegate.20emojis.20bot/near/528289834
Paul-Lez pushed a commit to Paul-Lez/mathlib4 that referenced this pull request Aug 23, 2025
…ent on the PR (leanprover-community#27570)

Recently the reaction bot on Zulip has been observed to add a reaction and then remove it shortly afterwards (mainly the reactions corresponding to the `ready-to-merge` and `delegated` labels). The mechanism seems to be the following:
- a maintainer writes a comment like "bors merge" (or "bors d+") on a PR that has been `maintainer-merge`'d
- `zulip_emoji_merge_delegate.yaml` and `zulip_emoji_merge_delegate_wf.yaml` react to this comment and:
  - simultaneously adds the "ready-to-merge" and removes the `maintainer-merge` label
  - adds the "merge" emoji reaction on Zulip
- the `zulip_emoji_labelling.yaml` workflow reacts to the `maintainer-merge` label being removed, and clears the "merge" emoji as well. See [this log](https://github.com/leanprover-community/mathlib4/actions/runs/16270158496/job/45935446666#step:5:30) (which removes the "delegated" emoji).

We change the `zulip_emoji_labelling.yaml` workflow so that it passes the current list of labels on the PR to the `zulip_emoji_reactions.py` script, and also change the script so that it only removes a reaction if the corresponding label is NOT present.

cf. https://leanprover.zulipchat.com/#narrow/channel/345428-mathlib-reviewers/topic/merge.2Fdelegate.20emojis.20bot/near/528289834
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI Modifies the continuous integration setup or other automation ready-to-merge This PR has been sent to bors.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants