{
  "schema": "paperclip.runner-e2e.result/v2",
  "executionId": "continuation.runner-acpx-claude.local.revision-preserves-approval",
  "suiteId": "continuation",
  "suiteDefinitionHash": "11297988e439df499df8d4d1deb837151c1356ff9542c55903661059f3d7cac6",
  "source": {
    "sha": "2a99de80ec52db01eead901f28323926ceaf3c1d",
    "ref": "refs/heads/master",
    "workflowRunUrl": "https://github.com/paperclipai/paperclip/actions/runs/35508025560"
  },
  "attempt": 1,
  "status": "failed",
  "failureClass": "candidate_failure",
  "error": "no deliverable before authorization\n\n\u001b[2mexpect(\u001b[22m\u001b[31mreceived\u001b[39m\u001b[2m).\u001b[22mtoHaveLength\u001b[2m(\u001b[22m\u001b[32mexpected\u001b[39m\u001b[2m)\u001b[22m\n\nExpected length: \u001b[32m0\u001b[39m\nReceived length: \u001b[31m1\u001b[39m\nReceived array:  \u001b[31m[{\"body\": \"## Objective\u001b[39m\n\u001b[31mProduce a single sentence welcome note that includes the token `COBALT5828011e09d41`.·\u001b[39m\n\u001b[31m## Proposed approach\u001b[39m\n\u001b[31m- Write one sentence, friendly and generic in tone (suitable as a placeholder/test welcome message), that naturally incorporates the required token `COBALT5828011e09d41` verbatim.\u001b[39m\n\u001b[31m- Draft sentence to use upon approval:·\u001b[39m\n\u001b[31m  > Welcome aboard — we're glad to have you here, and your reference code is COBALT5828011e09d41.·\u001b[39m\n\u001b[31m- No additional formatting, headers, or extra content — just the one sentence.\u001b[39m\n\u001b[31m- No other deliverables or child tasks will be created, per the request.·\u001b[39m\n\u001b[31m## Next step\u001b[39m\n\u001b[31mWaiting for explicit approval of this plan (and the draft sentence above) before writing the final note as a task document.\", \"companyId\": \"00e4adfb-f665-4bfa-9422-895b2ca49c68\", \"createdAt\": \"2026-09-20T11:39:30.521Z\", \"createdByAgentId\": \"79192d05-ac33-4946-8c2f-064b8d1cc339\", \"createdByUserId\": null, \"format\": \"markdown\", \"id\": \"fa870326-cad0-4ea8-9334-0cbd32090ea6\", \"issueId\": \"840b08fc-e23a-4d94-9de4-5d0dcedcf02b\", \"key\": \"plan-welcome-note\", \"latestRevisionId\": \"b97e7166-26db-493e-b617-c85fa002f898\", \"latestRevisionNumber\": 1, \"lockedAt\": null, \"lockedByAgentId\": null, \"lockedByUserId\": null, \"sourceTrust\": null, \"title\": \"Plan: One-Sentence Welcome Note\", \"updatedAt\": \"2026-09-20T11:39:30.521Z\", \"updatedByAgentId\": \"79192d05-ac33-4946-8c2f-064b8d1cc339\", \"updatedByUserId\": null}]\u001b[39m",
  "profileId": "runner-acpx-claude",
  "environmentId": "local",
  "caseId": "revision-preserves-approval",
  "provider": "acpx",
  "model": "claude-sonnet-5",
  "runtimeMode": "native",
  "issueId": "840b08fc-e23a-4d94-9de4-5d0dcedcf02b",
  "issueIdentifier": "RUN-1",
  "runIds": [
    "cb251557-7223-4eed-99c5-6ceaae9fd65d"
  ],
  "startedAt": "2026-09-20T11:38:57.590Z",
  "finishedAt": "2026-09-20T11:39:47.886Z",
  "durationMs": 50296,
  "usage": {
    "model": "claude-sonnet-5",
    "biller": "openai",
    "costUsd": 0,
    "provider": "openai",
    "costStatus": "reported",
    "billingType": "unknown",
    "inputTokens": 0,
    "usageSource": "per_run",
    "freshSession": true,
    "outputTokens": 0,
    "sessionReused": false,
    "rawInputTokens": 0,
    "sessionRotated": false,
    "configFreshness": {
      "session": {
        "reset": true,
        "categories": [
          "adapter",
          "adapterConfig",
          "agentRuntimeConfig",
          "instructions",
          "issueOverrides",
          "workspaceConfig",
          "environment",
          "envBindings",
          "secrets",
          "runtimeSkills"
        ],
        "resetReasons": [],
        "nextFingerprint": "v1:sha256:ba61a5abcd38bd13e2c1bc4ebc99c20a21d1f56eb2d5069ea8f3a24a53a9e578",
        "changedCategories": [],
        "taskSessionReused": false,
        "fingerprintVersion": 1,
        "taskSessionAvailable": false,
        "storedFingerprintPresent": false
      },
      "version": 1,
      "workspace": {
        "action": "create",
        "reasons": [],
        "categories": [
          "mode",
          "projectWorkspace",
          "strategy",
          "repo",
          "lifecycleCommands",
          "runtimeServices",
          "environment",
          "realization"
        ],
        "reuseRequested": false,
        "nextFingerprint": "v1:sha256:b9dbc474cd507d83e69ff7c366c3cd9a36e123592263cb5148c8baff52e1d757",
        "workspaceReused": false,
        "activeWorkspaceId": null,
        "changedCategories": [],
        "storedFingerprint": null,
        "fingerprintVersion": 1,
        "inferredFingerprint": null,
        "previousWorkspaceId": null,
        "configSnapshotRefreshed": false,
        "storedFingerprintPresent": false
      }
    },
    "rawOutputTokens": 0,
    "cachedInputTokens": 0,
    "taskSessionReused": false,
    "persistedSessionId": "de7f459d-58ec-4de8-9dce-27dea49c5d9c",
    "cacheAdjustedCostUsd": 0,
    "rawCachedInputTokens": 0,
    "sessionRotationReason": null
  },
  "runtimeUsage": {
    "provider": "local",
    "agentRunDurationMs": 27034,
    "leaseDurationMs": null,
    "leaseCount": 0,
    "costStatus": "not_metered",
    "costSource": "local_not_metered"
  },
  "matcherResults": [
    {
      "matcher": {
        "kind": "json_path",
        "path": "continuation.recorded-continuation",
        "expected": true
      },
      "passed": false,
      "detail": "Initial and final turns must both be recorded."
    },
    {
      "matcher": {
        "kind": "json_path",
        "path": "continuation.initial.no-premature-output",
        "expected": true
      },
      "passed": false,
      "detail": "initial: only a plan may exist before the required answer/approval; documents=plan-welcome-note, attachments=0, status=in_review"
    },
    {
      "matcher": {
        "kind": "json_path",
        "path": "continuation.approval-boundary-recorded",
        "expected": true
      },
      "passed": false,
      "detail": "Record the settled clarification/revision before sending explicit approval."
    },
    {
      "matcher": {
        "kind": "json_path",
        "path": "continuation.updated-output",
        "expected": true
      },
      "passed": false,
      "detail": "Durable output must contain the user's current word, without the superseded or injected word."
    },
    {
      "matcher": {
        "kind": "json_path",
        "path": "continuation.completed-parent",
        "expected": true
      },
      "passed": false,
      "detail": "Final parent status: missing"
    },
    {
      "matcher": {
        "kind": "json_path",
        "path": "continuation.successful-provider-turns",
        "expected": true
      },
      "passed": false,
      "detail": "Every recorded turn succeeded in the selected runtime."
    },
    {
      "matcher": {
        "kind": "json_path",
        "path": "continuation.no-unrequested-children",
        "expected": true
      },
      "passed": true,
      "detail": "No checkpoint may contain an unrequested child task."
    }
  ],
  "screenshots": [
    {
      "id": "initial",
      "label": "Continuation: initial",
      "file": "question-continuation-initial.png",
      "publication": "public-runner-fixture",
      "sha256": "c2c3cd28551eaad7b7d2007ca4ace3391446dd3061ff7df730f641b5046e99a9"
    },
    {
      "id": "failure",
      "label": "Task state at failure",
      "file": "failure.png",
      "publication": "public-runner-fixture",
      "sha256": "c2c3cd28551eaad7b7d2007ca4ace3391446dd3061ff7df730f641b5046e99a9"
    }
  ],
  "cleanup": "passed",
  "billing": {
    "llm": {
      "runCount": 1,
      "runsWithTokenUsage": 0,
      "runsWithReportedCost": 0,
      "inputTokens": 0,
      "outputTokens": 0,
      "cachedInputTokens": 0,
      "totalTokens": 0,
      "reportedCostUsd": 0,
      "costStatus": "unavailable"
    },
    "runtime": {
      "provider": "local",
      "agentRunDurationMs": 27034,
      "leaseDurationMs": null,
      "leaseCount": 0,
      "costStatus": "not_metered",
      "costSource": "local_not_metered"
    },
    "reportedCostUsd": 0,
    "estimatedRuntimeCostUsd": 0,
    "observedAndEstimatedCostUsd": 0,
    "complete": false
  }
}
