{
  "schemaVersion": 1,
  "studyDate": "2026-11-04",
  "title": "TikChat MultiChat in a 45-Minute LIVE Chat Pilot",
  "studyType": "First-party exploratory production pilot",
  "commissionedBy": "Matt Olech, owner of TikChat",
  "observationMethod": "An AI assistant operated TikChat and sampled native public chat interfaces in a browser.",
  "selection": "One convenience-selected public LIVE per platform, four different broadcasts.",
  "timeZone": "Europe/Warsaw",
  "utcOffset": "+01:00",
  "referenceWindow": {
    "startsAt": "2026-11-04T20:03:33.019Z",
    "endsAt": "2026-11-04T20:48:33.019Z",
    "lastReadAt": "2026-11-04T20:48:32.280Z",
    "lastReadElapsedSeconds": 2699.261
  },
  "applicationSession": {
    "startsAt": "2026-11-04T20:02:32.588Z",
    "finalInterfaceMatchAt": "2026-11-04T20:49:24.036Z",
    "stoppedAt": "2026-11-04T20:50:37.766Z"
  },
  "tiktokEndObservation": {
    "lastConnectedAt": "2026-11-04T20:22:47.582Z",
    "firstEndedAt": "2026-11-04T20:23:27.040Z"
  },
  "totals": {
    "referenceEntries": 5040,
    "matched": 4979,
    "unresolved": 61
  },
  "platforms": {
    "tiktok": {
      "referenceEntries": 187,
      "matched": 186,
      "unresolved": 1,
      "matchedByProviderId": 0,
      "matchedByRenderedAuthorAndText": 186,
      "matchedAfterActionDecoding": 0,
      "observedNativeTypes": {
        "comment": 187
      }
    },
    "youtube": {
      "referenceEntries": 3758,
      "matched": 3755,
      "unresolved": 3,
      "matchedByProviderId": 3461,
      "matchedByRenderedAuthorAndText": 294,
      "matchedAfterActionDecoding": 0,
      "observedNativeTypes": {
        "comment": 3739,
        "yt-live-chat-paid-message-renderer": 17,
        "yt-live-chat-membership-item-renderer": 2
      }
    },
    "kick": {
      "referenceEntries": 370,
      "matched": 368,
      "unresolved": 2,
      "matchedByProviderId": 0,
      "matchedByRenderedAuthorAndText": 368,
      "matchedAfterActionDecoding": 0,
      "observedNativeTypes": {
        "comment": 370
      }
    },
    "twitch": {
      "referenceEntries": 725,
      "matched": 670,
      "unresolved": 55,
      "matchedByProviderId": 0,
      "matchedByRenderedAuthorAndText": 666,
      "matchedAfterActionDecoding": 4,
      "observedNativeTypes": {
        "comment": 725
      }
    }
  },
  "backendCheck": {
    "verifiedAt": "2026-11-04T20:49:37.939Z",
    "interfaceAndBackendMatchCountsAgree": true,
    "scope": "Consistency check using the same underlying TikChat feed. Native browser views supplied the external reference."
  },
  "serverReceivedWindowEntries": {
    "kick": 554,
    "tiktok": 186,
    "twitch": 720,
    "youtube": 4032
  },
  "serverReceivedWindowEntriesDefinition": "Application events of kind comment received in the exact reference window. For additional platforms, this includes supported paid or system activity. Matching could also use warm-up and follow-up entries.",
  "activity": {
    "tiktokGiftUnits": 2,
    "tiktokGiftCoins": 2,
    "tiktokGiftProgressEvents": 3,
    "tiktokFollowerSignalsInWindow": 1,
    "kickFollowerSignalsInWindow": 13,
    "nativeYouTubePaidEntries": 17,
    "nativeYouTubeMembershipEntries": 2,
    "wholeApplicationSessionAdditionalActivityEntries": {
      "youtube": 20,
      "twitch": 1
    },
    "tiktokLikeCounter": {
      "first": {
        "at": "2026-11-04T20:03:34.150Z",
        "counter": 38399
      },
      "last": {
        "at": "2026-11-04T20:22:25.585Z",
        "counter": 42336
      },
      "recordedDifference": 3937
    }
  },
  "samplingIntervals": {
    "polls": 145,
    "medianSeconds": 10.32,
    "p95Seconds": 61.588,
    "maximumSeconds": 167.061
  },
  "limitations": [
    "Methods were refined during the run.",
    "Kick native reference was incomplete from 20:15:23.660Z to 20:28:12.484Z, approximately 12 minutes 49 seconds. TikChat continued receiving events.",
    "TikTok ended approximately 20 minutes into the reference window.",
    "Two YouTube reads replaced the complete observed buffer, indicating potential reference omissions.",
    "Native buffer rebuilds required sequence-based removal of repeated reads.",
    "Large operator reads were corrected and backfilled from retained rendered history.",
    "Each platform was represented by one broadcast with its own audience and traffic.",
    "The aggregate evidence does not determine the cause of each unresolved entry or establish a full capture rate.",
    "Exact end-to-end latency percentiles were left unmeasured.",
    "Detailed messages and working fingerprints were discarded after aggregate verification."
  ],
  "diagnostics": [
    {
      "code": "connection_confirmed",
      "total": 1
    },
    {
      "code": "provider_error",
      "total": 1
    }
  ],
  "privacy": {
    "publishedContent": "Aggregates, observation times and method notes",
    "viewerIdentifiersPublished": false,
    "creatorAccountIdentifiersPublished": false,
    "commentTextPublished": false,
    "fingerprintsPublished": false
  }
}
