Resolve "Incorrect system notes and email notifications when unassigning users via API"
requested to merge 331102-incorrect-system-notes-and-email-notifications-when-unassigning-users-via-api into master
What does this MR do?
This MR addresses issues with post-update actions not being applied, due to deduplication keys for the jobs not being cleared.
Manual QA steps
Unfortunately, due to subtle interactions with our Sidekiq middleware, the best way to test this is manually.
To do so, you should set up a GDK, and get yourself a personal access token. We also
need to work with an MR. I am using flightjs/flight!1
in my examples below.
Steps:
- open the MR page: http://localhost:3000/flightjs/Flight/-/merge_requests/1
- in a terminal, run a number of assigmnents. I used the following script:
url="http://localhost:3000/api/v4/projects/flightjs%2Fflight/merge_requests/1"
auth="Authorization: Bearer $TOKEN"
curl -X PUT -s -H "$auth" "$url" -d title="Updated at $(date)" | jq '{title, id}';
for i in 0 1 2 3 4 2 3 0 1 ; do
curl -X PUT -s -H "$auth" "$url" -d assignee_id=$i | jq '{id, title, assignee: (.assignee.username)}'
sleep 10
done
Observe as the system notes are added to the MR page, one by one.
Does this MR meet the acceptance criteria?
Conformity
-
I have included a changelog entry, or it's not needed. (Does this MR need a changelog?) -
I have added/updated documentation, or it's not needed. (Is documentation required?) -
I have properly separated EE content from FOSS, or this MR is FOSS only. (Where should EE code go?) -
I have self-reviewed this MR per code review guidelines. -
This MR does not harm performance, or I have asked a reviewer to help assess the performance impact. (Merge request performance guidelines) -
I have followed the style guides.
Availability and Testing
-
I have added/updated tests following the Testing Guide, or it's not needed. (Consider all test levels. See the Test Planning Process.)
Related to #331102 (closed)
Edited by Alex Kalderimis