{
  "test_id": "T27",
  "verdict": "fail",
  "observed": "in-flight 요청(/delay/8)은 drain 트리거 도중에도 200/elapsed=8.01s로 완주했고, downstream_rq_active 게이지는 /drip(duration=15)을 이용한 대체 실험에서 진행 중 1을 유지하다 실제 완료(t+19s)에야 0으로 떨어져 '시간 경과만으로 0이 되지 않는다'는 주장을 명확히 지지했다. skip_exit를 쓴 drainbackend는 drain_time(45s)이 한참 지나도 istio-proxy PID·restartCount(0)가 그대로였으나, skip_exit를 쓰지 않은 drainbackend-noskipexit는 13분 이상 지나도 동일 Envoy PID가 살아있고 admin API가 200을 응답했으며 restartCount도 0으로, 'skip_exit 없으면 스스로 종료·재시작된다'는 주장은 반박되었다(readiness 포트만 응답을 멈춰 Pod가 NotReady로만 전환됨, livenessProbe 부재로 재시작 안 됨). 신규 연결은 즉시 거부(rejected)되지는 않았으나(5회 이상 probe 전부 200 OK), graceful drain 활성 상태에서도 Connection: close 헤더는 즉시/13s/25s/37s 시점 및 drain 경계를 넘겨 재사용한 기존 keep-alive 커넥션에서까지 단 한 번도 관측되지 않아 '억제 신호가 붙는다'는 주장도 반박되었다. inboundonly 생략 시 자기 자신의 outbound 호출에 대한 영향은 뚜렷한 신호 없이 계속 성공하여 결론이 약함(inconclusive).",
  "claims": [
    {
      "doc": "gt__src-apps-walkthrough",
      "cid": "C1",
      "empirical": "inconclusive",
      "note": "walkthrough 개괄 주장으로 추정; in-flight 보호·rq_active 게이지는 확인됐으나 Connection:close 신호와 no-skip_exit 자동종료는 반박되어 전체 서술 정확도는 혼재"
    },
    {
      "doc": "gt__src-apps-walkthrough",
      "cid": "C4",
      "empirical": "refutes-claim",
      "note": "새 연결에 Connection:close류 억제 신호가 붙는다는 서술로 추정 — 5회 이상 probe(즉시/13s/25s/37s/기존 keep-alive 재사용) 전부 미관측"
    },
    {
      "doc": "gt__src-apps-walkthrough",
      "cid": "C5",
      "empirical": "supports-claim",
      "note": "in-flight 요청 완주(200/8.01s) 서술로 추정 — 명확히 확인됨"
    },
    {
      "doc": "gt__src-envoy-drain-listeners",
      "cid": "C1",
      "empirical": "supports-claim",
      "note": "graceful drain 중에도 신규 연결이 즉시 거부되지 않고 성공한다는 핵심 서술 — 지지됨"
    },
    {
      "doc": "gt__src-envoy-drain-listeners",
      "cid": "C8",
      "empirical": "refutes-claim",
      "note": "skip_exit 미사용 시 drain 완료 후 Envoy가 스스로 종료한다는 서술로 추정 — 13분 이상 후에도 동일 PID로 생존, admin API 200 응답, restartCount 불변으로 반박"
    },
    {
      "doc": "gt__src-envoy-drain-listeners",
      "cid": "C9",
      "empirical": "supports-claim",
      "note": "skip_exit 사용 시 drain 이후에도 프로세스가 생존한다는 서술 — restartCount 불변으로 명확히 지지됨"
    },
    {
      "doc": "gt__src-envoy-drain-listeners",
      "cid": "C12",
      "empirical": "refutes-claim",
      "note": "Connection: close/GOAWAY 신호 관련 서술로 추정 — HTTP/1.1에서 신호 전혀 미관측(GOAWAY는 h2 백엔드 부재로 테스트 불가)"
    },
    {
      "doc": "gt__src-w1-big-picture",
      "cid": "C1",
      "empirical": "supports-claim",
      "note": "in-flight 보호 개념 서술로 추정 — 지지됨"
    },
    {
      "doc": "gt__src-w1-big-picture",
      "cid": "C2",
      "empirical": "refutes-claim",
      "note": "신규 연결에 대한 억제 신호(Connection:close) 서술로 추정 — 미관측으로 반박"
    },
    {
      "doc": "gt__src-w1-big-picture",
      "cid": "C3",
      "empirical": "supports-claim",
      "note": "rq_active 게이지가 실제 완료 시점에만 0이 된다는 서술로 추정 — /drip 대체 실험으로 명확히 지지"
    },
    {
      "doc": "gt__src-w2-hc-fsm",
      "cid": "C8",
      "empirical": "supports-claim",
      "note": "drain 중 헬스체크 FSM 상태 전이(readiness 실패) 서술로 추정 — no-skip_exit pod에서 15021 readiness 포트가 응답 거부로 전환되어 Pod NotReady 확인, 지지됨"
    },
    {
      "doc": "gt__src-w2-hc-fsm",
      "cid": "C9",
      "empirical": "supports-claim",
      "note": "동일 헬스체크 상태 전이 관련 서술로 추정 — 위와 동일 근거로 지지"
    },
    {
      "doc": "gt__src-w6-production-apply",
      "cid": "C1",
      "empirical": "refutes-claim",
      "note": "운영 적용 가이드에서 'skip_exit 없이 쓰면 재시작된다'는 전제로 추정 — 13분 후에도 재시작 안 됨(livenessProbe 부재)으로 반박, 실제로는 readiness 실패만 발생하고 컨테이너는 재시작되지 않음"
    },
    {
      "doc": "gt__src-w6-production-apply",
      "cid": "C3",
      "empirical": "supports-claim",
      "note": "skip_exit로 프로세스를 살려두는 운영 패턴 서술로 추정 — restartCount 불변으로 지지됨"
    }
  ]
}
