Problem
User fields don't sync assignee, reporter, watchers, voters, or custom fields of type User.
Synchronization works, no specific errors are raised by Exalate. When syncing, the issue remains unassigned and the reporter field is empty.
Cause
Due to major changes to Jira Cloud REST APIs which improve user privacy, we updated the getUser nodeHelper method. Now it relies on the AccountId for Jira Cloud.
Solution
You need to replace nodeHelper methods in the Sync Rules.
For Jira Cloud
Replace nodeHelper.getUserByUsername to nodeHelper.getUser or nodeHelper.getUserByEmail
If the destination side is Jira Cloud
Add the code below into the Incoming sync (create/change processor) on your side.
// set local assignee the same as remote using remote user accountId
issue.assignee = nodeHelper.getUser(replica.assignee.key)
issue.reporter = nodeHelper.getUser(replica.reporter.key)
//or
issue.assignee = nodeHelper.getUserByEmail(replica.assignee.email)
issue.reporter = nodeHelper.getUserByEmail(replica.reporter.email)