feat(ecosystem): Implement cross-system issue synchronization #9
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Test 7
Replicated from ai-code-review-evaluation/sentry-cursor#7
Note
Introduces AssignmentSource and threads it through assignee/status sync to prevent cross-integration assignment sync loops.
AssignmentSource(src/sentry/integrations/services/assignment_source.py) withfrom_integration,to_dict,from_dictfor tracking assignment origin.IssueBasicIntegration.should_sync(...)andIssueSyncIntegration.should_sync(...)to acceptsync_sourceand short-circuit when source integration matches, preventing sync cycles.IssueSyncIntegration.sync_status_outbound(...)to acceptassignment_source.sync_assignee_outboundtask to acceptassignment_source_dict, parse toAssignmentSource, pass toshould_syncandsync_assignee_outbound.sync_group_assignee_inbound, passAssignmentSource.from_integration(...)toGroupAssignee.objects.assign/deassign.sync_group_assignee_outbound, forwardassignment_sourceviaassignment_source_dictto the task.GroupAssigneeManager.assign/deassignto acceptassignment_sourceand propagate tosync_group_assignee_outbound.AssignmentSourceserialization/parsing.GroupAssigneetests to verify outbound sync receivesassignment_sourceand that matching-source integrations do not trigger outbound sync.Written by Cursor Bugbot for commit f9919d7. Configure here.