specify / specify7

Specify 7
https://www.specifysoftware.org/products/specify-7/
GNU General Public License v2.0
66 stars 36 forks source link

Merging agents unchecks isCurrent checkbox in associated determinations #4969

Closed lexiclevenger closed 5 months ago

lexiclevenger commented 5 months ago

Describe the bug

Merging agents that are a determiner for a collection object causes the 'isCurrent' checkbox to become unchecked.

I was only able to recreate it using the following workflow in 7.9.5 and edge, but Corinna P also reports encountering it in 7.9.3.1 and 7.9.4.

To Reproduce Steps to reproduce the behavior:

  1. Create and save two Agent records
  2. Create a Collection Object record
  3. Add a determination and add one of the two agents as a determiner
  4. Merge the Agent records
  5. Revisit the Collection Object record and see that 'iscurrent' is unchecked

Expected behavior The 'isCurrent' checkbox should remain checked after merging the determiner.

Screenshots Before merging determiner:

Screenshot 2024-05-30 at 1 16 34 PM

After merging determiner:

Screenshot 2024-05-30 at 1 17 42 PM

Specify 7 System Information - 2024-05-30T18_22_57.148Z.txt

Please, also fill out the following information manually:

Reported By Corinna P from CSIRO via Asana

We recently noted the isCurrent flag disappearing from determinations (in the hundreds). After a lot of trouble shooting, we have narrowed it down to the agent merging process. It appears to happen where the Determiner agentID is replaced as part of the merge process.

realVinayak commented 5 months ago

caused by https://github.com/specify/specify7/pull/4237