**Describe the bug** <img width="403" height="109" alt="Image" src="https://github.com/user-attachments/assets/14a94daf-41c1-48a1-8c77-d4e9f835c609" /> After upgrading from `1.0.12` to `1.1.14`, we noticed that the SQS controller is constantly attempting to update Queues. Relevant Logs: ```json { "level": "info", "ts": "2025-08-08T11:36:51.982Z", "logger": "ackrt", "msg": "desired resource state has changed", "kind": "Queue", "namespace": "<NAMESPACE>", "name": "<NAME>", "account": "<ACCOUNT_ID>", "role": "", "region": "<REGION>", "is_adopted": false, "generation": 6460, "diff": [ { "Path": { "Parts": [ "Spec", "Policy" ] }, "A": "{\"Statement\":[{\"Action\":[\"sqs:SendMessage\"],\"Condition\":{\"ArnEquals\":{\"aws:SourceArn\":\"<TOPIC_ARN>\"}},\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"sns.amazonaws.com\"},\"Resource\":\"<QUEUE_ARN>\"}],\"Version\":\"2012-10-17\"}", "B": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"sns.amazonaws.com\"},\"Action\":\"sqs:SendMessage\",\"Resource\":\"<QUEUE_ARN>\",\"Condition\":{\"ArnEquals\":{\"aws:SourceArn\":\"<TOPIC_ARN>\"}}}]}" }, { "Path": { "Parts": [ "Spec", "DelaySeconds" ] }, "A": null, "B": "0" }, { "Path": { "Parts": [ "Spec", "KMSDataKeyReusePeriodSeconds" ] }, "A": null, "B": "300" }, { "Path": { "Parts": [ "Spec", "MaximumMessageSize" ] }, "A": null, "B": "1048576" }, { "Path": { "Parts": [ "Spec", "MessageRetentionPeriod" ] }, "A": null, "B": "345600" }, { "Path": { "Parts": [ "Spec", "ReceiveMessageWaitTimeSeconds" ] }, "A": null, "B": "0" }, { "Path": { "Parts": [ "Spec", "SQSManagedSSEEnabled" ] }, "A": null, "B": "false" }, { "Path": { "Parts": [ "Spec", "VisibilityTimeout" ] }, "A": null, "B": "30" } ] } ``` I believe the pertinent diff is the Policy diff which compares an action like: ```yaml action: ["sqs:SendMessage"] ``` to ```yaml action: "sqs:SendMessage" ``` I believe the issue was added in https://github.com/aws-controllers-k8s/sqs-controller/commit/4b7895a3170170b26ae6008ffda8651e25c97b33. **Steps to reproduce** Create a queue with an action or resource as a string instead of an array of a single string **Expected outcome** I expect SQS to not attempt to make calls to the AWS API when the resources are semantically the same. **Environment** * EKS Version 1.31 * SQS