{
  "schema": "ntfyx.agent-reply-walkthrough.public-summary.v1",
  "observed_at": "2026-10-24T13:34:20.455Z",
  "environment": "staging",
  "status": "passed",
  "published_cli": {
    "version": "0.4.1",
    "build": "release",
    "platform": "linux-x64",
    "sha256": "fb28aace205be64f82d440ef3dec5da6d0e7074c8144063e6dbd4ca75698a89a",
    "signed_public_manifest_verified": true,
    "public_manifest_sha256": "cdc6be1cdcef21868bcba64863b3a2cebf1c8f52c5be73b5bc5ae498ebf0539e"
  },
  "example_script": {
    "url": "https://ntfyx.me/examples/scripts/agent-reply-walkthrough.py",
    "sha256": "56ee374768173fa3f991eaf93e81f4fca0e38bda0c7669684e7f45d8f5270d47"
  },
  "scope": "Real published CLI binary and real staging API; locally generated synthetic Phone receiver decrypts and signs replies programmatically. No physical phone, APNs/FCM, browser UI or real Claude/Codex host was exercised.",
  "scenarios": [
    {
      "scenario": "continue",
      "status": "passed",
      "inbox_deleted": true,
      "local_credentials_removed": true,
      "exit_code": 0,
      "ordinary_notifications": 2,
      "question_types": [
        "choice",
        "text",
        "confirm"
      ],
      "single_topic_and_session_verified": true,
      "local_demo_summary_printed": true,
      "claim_checks": [
        {
          "type": "choice",
          "original_request_and_signature_verified": true,
          "source_claim_observed": true,
          "read_only_result_exit": 0,
          "read_only_result_grants_claim": false,
          "repeated_cli_claim_exit": 15,
          "fresh_server_claim_rejected": true
        },
        {
          "type": "text",
          "original_request_and_signature_verified": true,
          "source_claim_observed": true,
          "read_only_result_exit": 0,
          "read_only_result_grants_claim": false,
          "repeated_cli_claim_exit": 15,
          "fresh_server_claim_rejected": true
        },
        {
          "type": "confirm",
          "original_request_and_signature_verified": true,
          "source_claim_observed": true,
          "read_only_result_exit": 0,
          "read_only_result_grants_claim": false,
          "repeated_cli_claim_exit": 15,
          "fresh_server_claim_rejected": true
        }
      ],
      "late_answer_after_timeout_rejected": false,
      "stderr_recorded": false
    },
    {
      "scenario": "stop",
      "status": "passed",
      "inbox_deleted": true,
      "local_credentials_removed": true,
      "exit_code": 0,
      "ordinary_notifications": 1,
      "question_types": [
        "choice"
      ],
      "single_topic_and_session_verified": true,
      "local_demo_summary_printed": false,
      "claim_checks": [
        {
          "type": "choice",
          "original_request_and_signature_verified": true,
          "source_claim_observed": true,
          "read_only_result_exit": 0,
          "read_only_result_grants_claim": false,
          "repeated_cli_claim_exit": 15,
          "fresh_server_claim_rejected": true
        }
      ],
      "late_answer_after_timeout_rejected": false,
      "stderr_recorded": false
    },
    {
      "scenario": "deny",
      "status": "passed",
      "inbox_deleted": true,
      "local_credentials_removed": true,
      "exit_code": 10,
      "ordinary_notifications": 1,
      "question_types": [
        "choice",
        "text",
        "confirm"
      ],
      "single_topic_and_session_verified": true,
      "local_demo_summary_printed": false,
      "claim_checks": [
        {
          "type": "choice",
          "original_request_and_signature_verified": true,
          "source_claim_observed": true,
          "read_only_result_exit": 0,
          "read_only_result_grants_claim": false,
          "repeated_cli_claim_exit": 15,
          "fresh_server_claim_rejected": true
        },
        {
          "type": "text",
          "original_request_and_signature_verified": true,
          "source_claim_observed": true,
          "read_only_result_exit": 0,
          "read_only_result_grants_claim": false,
          "repeated_cli_claim_exit": 15,
          "fresh_server_claim_rejected": true
        },
        {
          "type": "confirm",
          "original_request_and_signature_verified": true,
          "source_claim_observed": true,
          "read_only_result_exit": 0,
          "read_only_result_grants_claim": false,
          "repeated_cli_claim_exit": 15,
          "fresh_server_claim_rejected": true
        }
      ],
      "late_answer_after_timeout_rejected": false,
      "stderr_recorded": false
    },
    {
      "scenario": "timeout",
      "status": "passed",
      "inbox_deleted": true,
      "local_credentials_removed": true,
      "exit_code": 14,
      "ordinary_notifications": 1,
      "question_types": [
        "choice"
      ],
      "single_topic_and_session_verified": true,
      "local_demo_summary_printed": false,
      "claim_checks": [],
      "late_answer_after_timeout_rejected": true,
      "stderr_recorded": false
    }
  ],
  "timeout_scope": "The CLI cancellation was confirmed by a remote read. The receiver SDK then refused to submit an answer for that cancelled request; a direct late-answer API submission was not exercised.",
  "source_receipt_sha256": "b4fda9b53f4d72312f665eb09810677f1001489e1b7cc46afea6714449935ab7",
  "external_action_executed": false,
  "no_root_source_or_device_identifiers_in_summary": true
}
