{
  "schema": "vedokrok.public-item.v1",
  "release_id": "MHC-RPUB-20260920-75ad787a",
  "url": "/knowledge/move-poison-work-out-of-the-main-queue",
  "id": "MHC-D-RESEARCH-0534",
  "version": "0.1.0",
  "title": "Move poison work out of the main queue",
  "summary": "One bad item should not get infinite turns at the front of the line.",
  "kind": "protocol",
  "body": "After a bounded number of failed attempts, move the item to a quarantine or dead-letter path with its error context. Let normal work continue. Give the quarantine an owner, alert and safe replay procedure so moving the item is not equivalent to forgetting it.",
  "limits": [
    "Ordering-sensitive workflows may require special handling because removing one item can violate sequence guarantees."
  ],
  "topics": [
    "union-capacity-overload-resilience"
  ],
  "intents": [],
  "source_ids": [
    "RS-71B5A64878ACBB5F"
  ],
  "evidence": [
    {
      "claim": "AWS recommends moving repeatedly unprocessable messages to a dead-letter path so they do not continuously block or recycle through the main queue.",
      "source_id": "RS-71B5A64878ACBB5F",
      "role": "supports",
      "note": "Dead-letter items still need ownership, diagnosis, retention and a safe replay process.",
      "locator": "Dead-letter queue purpose"
    }
  ],
  "use_when": [
    "One malformed or repeatedly failing job is retried and keeps blocking normal processing."
  ],
  "avoid_when": [
    "Ordering-sensitive workflows may require special handling because removing one item can violate sequence guarantees."
  ],
  "example": "A malformed customer record moves to an error queue after repeated validation failure instead of cycling through every batch.",
  "check": "One unprocessable item cannot indefinitely consume the normal queue's capacity.",
  "steps": [
    "Retry attempts are bounded.",
    "Repeatedly failing work leaves the main queue.",
    "Failure context is preserved.",
    "Quarantined work has an owner and alert.",
    "Replay requires the underlying cause or item to be corrected."
  ],
  "sources": [
    {
      "id": "RS-71B5A64878ACBB5F",
      "title": "Using dead-letter queues in Amazon SQS",
      "url": "https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-dead-letter-queues.html"
    }
  ],
  "relations": [],
  "collections": [
    {
      "id": "RC-2845565BFEBD1A30",
      "title": "Keep useful work flowing when demand exceeds capacity",
      "url": "/collections/keep-useful-work-flowing-when-demand-exceeds-capacity"
    }
  ]
}
