{
  "source": "Authenticated orchestration.getThreadProjection RPC, over each development server WebSocket; no database access",
  "attribution": "AI-assisted; verified with the tests and tools listed above.",
  "rows": [
    {
      "row": "U",
      "sides": {
        "before": {
          "sha": "c6ca6056309904f89b90b6055d797973be0a0939",
          "threadId": "thread:pi-evidence-U-capture",
          "failures": [
            {
              "runId": "run:thread:thread%3Api-evidence-U-capture:ordinal:1",
              "status": "failed",
              "title": "Provider error",
              "persistedAt": "2026-11-09T09:21:56.345Z",
              "failure": {
                "class": "provider_error",
                "message": "Codex error: The usage limit has been reached",
                "code": null,
                "retryable": null,
                "resetAt": null
              },
              "retry": null
            }
          ],
          "runs": [
            {
              "id": "run:thread:thread%3Api-evidence-U-capture:ordinal:1",
              "ordinal": 1,
              "status": "failed",
              "requestedAt": "2026-11-09T09:21:54.998Z",
              "startedAt": "2026-11-09T09:21:55.897Z",
              "completedAt": "2026-11-09T09:21:56.387Z"
            }
          ]
        },
        "after": {
          "sha": "107c62505bbaa56b1f7d2c9cdd73a5fd66fc0831",
          "threadId": "thread:pi-evidence-U-capture",
          "failures": [
            {
              "runId": "run:thread:thread%3Api-evidence-U-capture:ordinal:1",
              "status": "failed",
              "title": "Usage limit reached",
              "persistedAt": "2026-11-09T09:21:56.364Z",
              "failure": {
                "class": "usage_limit",
                "message": "Codex error: The usage limit has been reached",
                "code": null,
                "retryable": null,
                "resetAt": null
              },
              "retry": null
            }
          ],
          "runs": [
            {
              "id": "run:thread:thread%3Api-evidence-U-capture:ordinal:1",
              "ordinal": 1,
              "status": "failed",
              "requestedAt": "2026-11-09T09:21:55.077Z",
              "startedAt": "2026-11-09T09:21:56.053Z",
              "completedAt": "2026-11-09T09:21:56.400Z"
            }
          ]
        }
      }
    },
    {
      "row": "T",
      "sides": {
        "before": {
          "sha": "c6ca6056309904f89b90b6055d797973be0a0939",
          "threadId": "thread:pi-evidence-T",
          "failures": [
            {
              "runId": "run:thread:thread%3Api-evidence-T:ordinal:1",
              "status": "failed",
              "title": "Provider error",
              "persistedAt": "2026-11-09T09:24:48.607Z",
              "failure": {
                "class": "provider_error",
                "message": "You have hit your ChatGPT usage limit (plus plan). Try again in ~131 min.",
                "code": null,
                "retryable": null,
                "resetAt": null
              },
              "retry": null
            }
          ],
          "runs": [
            {
              "id": "run:thread:thread%3Api-evidence-T:ordinal:1",
              "ordinal": 1,
              "status": "failed",
              "requestedAt": "2026-11-09T09:24:47.571Z",
              "startedAt": "2026-11-09T09:24:48.312Z",
              "completedAt": "2026-11-09T09:24:48.629Z"
            }
          ]
        },
        "after": {
          "sha": "107c62505bbaa56b1f7d2c9cdd73a5fd66fc0831",
          "threadId": "thread:pi-evidence-T",
          "failures": [
            {
              "runId": "run:thread:thread%3Api-evidence-T:ordinal:1",
              "status": "failed",
              "title": "Usage limit reached",
              "persistedAt": "2026-11-09T09:24:48.611Z",
              "failure": {
                "class": "usage_limit",
                "message": "You have hit your ChatGPT usage limit (plus plan). Try again in ~131 min.",
                "code": null,
                "retryable": null,
                "resetAt": "2026-11-09T11:36:18.557Z"
              },
              "retry": null
            }
          ],
          "runs": [
            {
              "id": "run:thread:thread%3Api-evidence-T:ordinal:1",
              "ordinal": 1,
              "status": "failed",
              "requestedAt": "2026-11-09T09:24:47.550Z",
              "startedAt": "2026-11-09T09:24:48.320Z",
              "completedAt": "2026-11-09T09:24:48.640Z"
            }
          ]
        }
      }
    },
    {
      "row": "D",
      "sides": {
        "before": {
          "sha": "c6ca6056309904f89b90b6055d797973be0a0939",
          "threadId": "thread:pi-evidence-D",
          "failures": [
            {
              "runId": "run:thread:thread%3Api-evidence-D:ordinal:1",
              "status": "failed",
              "title": "Provider error",
              "persistedAt": "2026-11-09T09:29:32.309Z",
              "failure": {
                "class": "provider_error",
                "message": "You have hit your ChatGPT usage limit (plus plan). Try again in ~1 min.",
                "code": null,
                "retryable": null,
                "resetAt": null
              },
              "retry": null
            }
          ],
          "runs": [
            {
              "id": "run:thread:thread%3Api-evidence-D:ordinal:1",
              "ordinal": 1,
              "status": "failed",
              "requestedAt": "2026-11-09T09:29:30.546Z",
              "startedAt": "2026-11-09T09:29:31.563Z",
              "completedAt": "2026-11-09T09:29:32.385Z"
            }
          ],
          "recoveryImmediatelyAfterFailure": null,
          "recoveryAfterDeadline": null,
          "messages": [
            {
              "role": "user",
              "text": "Reply with the synthetic recovery confirmation.",
              "createdBy": "user",
              "creationSource": "web",
              "runId": "run:thread:thread%3Api-evidence-D:ordinal:1",
              "createdAt": "2026-11-09T09:29:30.546Z"
            }
          ]
        },
        "after": {
          "sha": "107c62505bbaa56b1f7d2c9cdd73a5fd66fc0831",
          "threadId": "thread:pi-evidence-D",
          "failures": [
            {
              "runId": "run:thread:thread%3Api-evidence-D:ordinal:1",
              "status": "failed",
              "title": "Usage limit reached",
              "persistedAt": "2026-11-09T09:29:32.375Z",
              "failure": {
                "class": "usage_limit",
                "message": "You have hit your ChatGPT usage limit (plus plan). Try again in ~1 min.",
                "code": null,
                "retryable": null,
                "resetAt": "2026-11-09T09:31:02.032Z"
              },
              "retry": null
            }
          ],
          "runs": [
            {
              "id": "run:thread:thread%3Api-evidence-D:ordinal:1",
              "ordinal": 1,
              "status": "failed",
              "requestedAt": "2026-11-09T09:29:30.533Z",
              "startedAt": "2026-11-09T09:29:31.524Z",
              "completedAt": "2026-11-09T09:29:32.434Z"
            },
            {
              "id": "run:thread:thread%3Api-evidence-D:ordinal:2",
              "ordinal": 2,
              "status": "completed",
              "requestedAt": "2026-11-09T09:31:02.212Z",
              "startedAt": "2026-11-09T09:31:02.274Z",
              "completedAt": "2026-11-09T09:31:02.728Z"
            }
          ],
          "recoveryImmediatelyAfterFailure": {
            "requestId": "limit-arm:thread:pi-evidence-D:run:thread:thread%3Api-evidence-D:ordinal:1:1794216662032",
            "runId": "run:thread:thread%3Api-evidence-D:ordinal:1",
            "resetAt": "2026-11-09T09:31:02.032Z",
            "autoResume": true,
            "snooze": false
          },
          "recoveryAfterDeadline": {
            "requestId": "limit-arm:thread:pi-evidence-D:run:thread:thread%3Api-evidence-D:ordinal:1:1794216662032",
            "runId": "run:thread:thread%3Api-evidence-D:ordinal:1",
            "resetAt": "2026-11-09T09:31:02.032Z",
            "autoResume": true,
            "snooze": false
          },
          "messages": [
            {
              "role": "user",
              "text": "Reply with the synthetic recovery confirmation.",
              "createdBy": "user",
              "creationSource": "web",
              "runId": "run:thread:thread%3Api-evidence-D:ordinal:1",
              "createdAt": "2026-11-09T09:29:30.533Z"
            },
            {
              "role": "user",
              "text": "Continue where you left off.",
              "createdBy": "agent",
              "creationSource": "server",
              "runId": "run:thread:thread%3Api-evidence-D:ordinal:2",
              "createdAt": "2026-11-09T09:31:02.212Z"
            },
            {
              "role": "assistant",
              "text": "Synthetic recovery succeeded. The thread resumed automatically after the usage limit reset.",
              "createdBy": "agent",
              "creationSource": "provider",
              "runId": "run:thread:thread%3Api-evidence-D:ordinal:2",
              "createdAt": "2026-11-09T09:31:02.629Z"
            }
          ]
        }
      }
    },
    {
      "row": "R",
      "sides": {
        "before": {
          "sha": "c6ca6056309904f89b90b6055d797973be0a0939",
          "threadId": "thread:pi-evidence-R",
          "failures": [
            {
              "runId": "run:thread:thread%3Api-evidence-R:ordinal:1",
              "status": "failed",
              "title": "Provider error",
              "persistedAt": "2026-11-09T09:27:09.239Z",
              "failure": {
                "class": "provider_error",
                "message": "Codex error: The usage limit has been reached",
                "code": null,
                "retryable": false,
                "resetAt": null
              },
              "retry": {
                "attempt": 1,
                "maxAttempts": 1,
                "retryDelayMs": 100
              }
            }
          ],
          "runs": [
            {
              "id": "run:thread:thread%3Api-evidence-R:ordinal:1",
              "ordinal": 1,
              "status": "failed",
              "requestedAt": "2026-11-09T09:27:08.108Z",
              "startedAt": "2026-11-09T09:27:08.840Z",
              "completedAt": "2026-11-09T09:27:09.263Z"
            }
          ]
        },
        "after": {
          "sha": "107c62505bbaa56b1f7d2c9cdd73a5fd66fc0831",
          "threadId": "thread:pi-evidence-R",
          "failures": [
            {
              "runId": "run:thread:thread%3Api-evidence-R:ordinal:1",
              "status": "failed",
              "title": "Usage limit reached",
              "persistedAt": "2026-11-09T09:27:09.155Z",
              "failure": {
                "class": "usage_limit",
                "message": "Codex error: The usage limit has been reached",
                "code": null,
                "retryable": false,
                "resetAt": null
              },
              "retry": {
                "attempt": 1,
                "maxAttempts": 1,
                "retryDelayMs": 100
              }
            }
          ],
          "runs": [
            {
              "id": "run:thread:thread%3Api-evidence-R:ordinal:1",
              "ordinal": 1,
              "status": "failed",
              "requestedAt": "2026-11-09T09:27:08.075Z",
              "startedAt": "2026-11-09T09:27:08.769Z",
              "completedAt": "2026-11-09T09:27:09.186Z"
            }
          ]
        }
      }
    }
  ]
}
