{
  "schema": "vedokrok.public-item.v1",
  "release_id": "MHC-RPUB-20260920-75ad787a",
  "url": "/knowledge/probe-the-boundary-between-two-components",
  "id": "MHC-D-RESEARCH-0294",
  "version": "0.1.0",
  "title": "Probe the boundary between two components",
  "summary": "Do not interrogate the whole chain when one boundary can answer where the bad value first appears.",
  "kind": "protocol",
  "body": "Choose a boundary with a defined input and output. Send a known test input or inspect one real transaction on both sides. If the input is correct and the output is wrong, the search moves inward; if the boundary already receives bad data, move upstream. Repeat until the failure domain is small enough to inspect directly.",
  "limits": [
    "A boundary check can be misleading when retries, caches, asynchronous queues or hidden transformations change the path."
  ],
  "topics": [
    "union-diagnostic-incident-work"
  ],
  "intents": [],
  "source_ids": [
    "RS-A4A16C807A94C9D8"
  ],
  "evidence": [
    {
      "claim": "Google SRE recommends examining well-defined component interfaces and injecting known test data to check expected transformations.",
      "source_id": "RS-A4A16C807A94C9D8",
      "role": "supports",
      "note": "Interface probes can disturb stateful systems; use safe inputs and preserve context needed to interpret the result.",
      "locator": "Simplify and reduce"
    }
  ],
  "use_when": [
    "Several services, interfaces or processing steps could plausibly own the same symptom."
  ],
  "avoid_when": [
    "A boundary check can be misleading when retries, caches, asynchronous queues or hidden transformations change the path."
  ],
  "example": "Capture the outbound payload from middleware and the inbound payload accepted by the target before debugging either application's entire data model.",
  "check": "The probe removes at least one component or interface from the active hypothesis set.",
  "steps": [
    "The probe removes at least one component or interface from the active hypothesis set."
  ],
  "sources": [
    {
      "id": "RS-A4A16C807A94C9D8",
      "title": "Effective Troubleshooting",
      "url": "https://sre.google/sre-book/effective-troubleshooting/"
    }
  ],
  "relations": [
    {
      "from": "MHC-D-RESEARCH-0294",
      "to": "MHC-D-RESEARCH-0295",
      "type": "alternative",
      "url": "/knowledge/bisect-a-large-failure-domain"
    }
  ],
  "collections": [
    {
      "id": "RC-6F9B0E6D320D1467",
      "title": "Find the fault without making the incident harder to understand",
      "url": "/collections/find-the-fault-without-making-the-incident-harder-to-understand"
    }
  ]
}
