{
  "schema": "vedokrok.public-item.v1",
  "release_id": "MHC-RPUB-20260920-75ad787a",
  "url": "/knowledge/push-back-on-intake-before-the-backlog-becomes-the-outage",
  "id": "MHC-D-RESEARCH-0535",
  "version": "0.1.0",
  "title": "Push back on intake before the backlog becomes the outage",
  "summary": "A growing queue is a message from capacity, not a storage success story.",
  "kind": "principle",
  "body": "When consumers approach their sustainable limit, slow or reject new intake rather than allowing unbounded backlog growth. Propagate the pressure to the producer through quotas, concurrency limits, retry-after signals or explicit scheduling. The producer must see that capacity is constrained.",
  "limits": [
    "Backpressure needs clear user behavior; invisible throttling can look like random failure."
  ],
  "topics": [
    "union-capacity-overload-resilience"
  ],
  "intents": [],
  "source_ids": [
    "RS-264CB803462A1B86",
    "RS-C1BEE49CF0075A87"
  ],
  "evidence": [
    {
      "claim": "AWS's 2026 fairness guidance uses throttling, quotas and backpressure to prevent one workload from starving others in a shared system.",
      "source_id": "RS-264CB803462A1B86",
      "role": "supports",
      "note": "Fairness policy must reflect actual priorities rather than equalizing workloads that have different importance.",
      "locator": "Admission control and fairness"
    },
    {
      "claim": "Google SRE recommends small queues or early rejection under steady overload because long queues add latency, memory use and work that may already have missed its deadline.",
      "source_id": "RS-C1BEE49CF0075A87",
      "role": "supports",
      "note": "Bursty asynchronous workloads can legitimately benefit from larger queues when backlog remains useful.",
      "locator": "Queue management and latency/deadlines"
    }
  ],
  "use_when": [
    "Work arrives faster than it can be completed and producers keep submitting at the same rate."
  ],
  "avoid_when": [
    "Backpressure needs clear user behavior; invisible throttling can look like random failure."
  ],
  "example": "Limit new agent jobs when human review capacity is saturated instead of generating thousands of outputs that will expire unread.",
  "check": "Backlog pressure changes intake behavior before the system exhausts memory, deadlines or reviewer capacity.",
  "sources": [
    {
      "id": "RS-264CB803462A1B86",
      "title": "Fairness in multi-tenant systems",
      "url": "https://builder.aws.com/content/3Eupj3d2bo4fEvlzYbICMZNhQ3B/fairness-in-multi-tenant-systems"
    },
    {
      "id": "RS-C1BEE49CF0075A87",
      "title": "Addressing Cascading Failures",
      "url": "https://sre.google/sre-book/addressing-cascading-failures/"
    }
  ],
  "relations": [
    {
      "from": "MHC-D-RESEARCH-0535",
      "to": "MHC-D-RESEARCH-0537",
      "type": "useful_with",
      "url": "/knowledge/give-shared-capacity-a-noisy-neighbor-rule"
    }
  ],
  "collections": [
    {
      "id": "RC-2845565BFEBD1A30",
      "title": "Keep useful work flowing when demand exceeds capacity",
      "url": "/collections/keep-useful-work-flowing-when-demand-exceeds-capacity"
    }
  ]
}
