{
  "schemaVersion": 3,
  "recordId": "cadre-agent-api-handshake-2026-08-28-rc33-plugin-v1.0.2-candidate",
  "measuredAt": "2026-08-28T09:23:32.800Z",
  "license": "https://creativecommons.org/publicdomain/zero/1.0/",
  "method": {
    "collectorName": "collect-rc33-v102-handshake.mjs",
    "collectorSha256": "b2075d81b321c773f63a1f00bfb8c341a23db34a92c197c63fe58f9b074f2bd2",
    "requestSequence": [
      "initialize",
      "notifications/initialized",
      "tools/list",
      "tools/call:get_app_state"
    ],
    "mutatingToolCalls": 0
  },
  "subject": {
    "app": {
      "name": "Cadre",
      "version": "1.0.0-rc.33",
      "bundleVersion": "1.0.0-rc.33",
      "distribution": "signed and notarized public macOS app launched from its read-only DMG",
      "release": "https://github.com/ArthurBrioche/cutro-releases/releases/tag/v1.0.0-rc.33",
      "sourceCommit": "857f4e7b831fa5400f78f46dedd1ecc03224d560",
      "downloadUrl": "https://github.com/ArthurBrioche/cutro-releases/releases/download/v1.0.0-rc.33/CADRE.dmg",
      "releaseAssetId": 533547375,
      "dmgSha256": "a9f7f8b9211ae7e57909ff457058a22f3a5233b8957372ef54880a0d33a215b9",
      "dmgBytes": 202901230,
      "dmgCdHash": "a96e3d8140d8d05de7d1f33d9df1a8eefa6d3d56",
      "dmgSigningIdentifier": "Cadre-1.0.0-rc.33-arm64",
      "executableSha256": "9cd3a1f089e297aaec6f97d6dfdb9222586b1056f227593ab0beec96386d9376",
      "bundleIdentifier": "com.cutro.app",
      "teamIdentifier": "K46XNRQD9K",
      "cdHash": "5374ec98bc2378f2645fca5b521f83f03d3111d2",
      "signatureTimestamp": "28 Aug 2026 at 11:06:00",
      "runtimeVersion": "26.4.0",
      "hardenedRuntime": true
    },
    "plugin": {
      "name": "cadre",
      "version": "1.0.2",
      "distribution": "independently versioned standalone Claude plugin",
      "repository": "https://github.com/ArthurBrioche/cadre-video-editor-plugin",
      "release": "https://github.com/ArthurBrioche/cadre-video-editor-plugin/releases/tag/v1.0.2",
      "sourceCommit": "7bb7bcc1d65941a2857e92c3c1596d9f1ecf1f5e",
      "archiveUrl": "https://github.com/ArthurBrioche/cadre-video-editor-plugin/releases/download/v1.0.2/Cadre-Claude-Plugin-v1.0.2.zip",
      "releaseAssetId": 524719691,
      "archiveSha256": "63aed246a57a01d20684313698bf2208dd3c76bceb4db137f0775817a737ff95",
      "archiveBytes": 24166,
      "exactFileCount": 8,
      "files": {
        ".claude-plugin/plugin.json": "276c6bb9751b0f85fc236e4ec5c617a2dee2e8a8608e40411003230fffdbd31a",
        ".mcp.json": "452efef7315422f71e4f9372469c96642fc7f1a252eb300dc2ee09d1276732f9",
        "LICENSE": "ab9689d97b3ab2bb0de0ed847996ae2ab7e89b8eabd5ea42e7993c975044994b",
        "README.md": "348e5442b8932977c41a138322e15f75d4135b58235221d01afed4168c93da9c",
        "SECURITY.md": "83ac7b649c1be2796e4d605e918da36fe1225526feaefa453c48a9349ae8cba8",
        "server/cadre-bridge.mjs": "cef53531c8e30926eb6c84942b79d507f12783ca0250211a4645a7786b6168b1",
        "server/cadre-launcher.sh": "3a84ecdb0df09134010d6a67640b713724c074f81a8bd8b7f2f819815f87970e",
        "skills/cadre-editor/SKILL.md": "5fba78f4c5e47e16d6fbed001c752c13a7363506e299b4f9dc7ccc0ccf33de90"
      }
    }
  },
  "environment": {
    "operatingSystem": "macOS 15.6.1",
    "architecture": "arm64",
    "nodeRuntime": "v26.7.0",
    "isolatedEphemeralProfile": true
  },
  "verification": {
    "dmgIntegrityValid": true,
    "dmgSignatureValid": true,
    "dmgDeveloperIdSigned": true,
    "dmgNotarizationTicketStapled": true,
    "dmgGatekeeperAccepted": true,
    "appSignatureValid": true,
    "appDeveloperIdSigned": true,
    "appNotarizationTicketStapled": true,
    "appGatekeeperAccepted": true,
    "mountedFromPinnedReadOnlyDmg": true,
    "runningProcessMatchesPinnedApp": true,
    "isolatedUserDataVerified": true,
    "profileDirectoryMode": "0700",
    "connectionFileMode": "0600",
    "connectionRecordUnchanged": true,
    "listenerOwnedByRunningApp": true,
    "loopbackOnly": true,
    "pluginArchiveMatchesExtractedFiles": true,
    "protocolVersion": "2025-06-18",
    "serverName": "screencraft",
    "serverVersion": "1.0.0-rc.33",
    "toolDiscovery": {
      "total": 60,
      "readOnly": 18,
      "mutations": 42,
      "destructive": 10,
      "idempotent": 27,
      "openWorld": 1,
      "namesSha256": "2a187fb2a171477814a5e585d5042c56089172b10442421df3ec27cab901dbfb",
      "definitionsSha256": "34affd967626b98654192c1d3dcbead00eb250ab20ac0d512e37454ee671b596",
      "requiredJobTools": [
        "get_agent_job_status",
        "get_agent_job_result",
        "cancel_agent_job"
      ],
      "names": [
        "get_app_state",
        "get_license_status",
        "list_recording_sources",
        "get_recording_status",
        "start_recording",
        "stop_recording",
        "pause_recording",
        "resume_recording",
        "cancel_recording",
        "list_projects",
        "open_project",
        "save_project",
        "import_video",
        "get_timeline",
        "map_time",
        "add_zoom",
        "update_zoom",
        "delete_zoom",
        "add_cut",
        "update_cut",
        "delete_cut",
        "set_speed",
        "delete_speed",
        "add_mask",
        "update_mask",
        "delete_mask",
        "recalculate_zooms",
        "add_text_overlay",
        "add_svg_overlay",
        "update_overlay",
        "delete_overlay",
        "add_camera_layout",
        "update_camera_layout",
        "delete_camera_layout",
        "analyze_audio",
        "list_captions",
        "add_caption",
        "update_caption",
        "delete_caption",
        "generate_captions",
        "set_caption_style",
        "list_caption_models",
        "download_caption_model",
        "get_recording_context",
        "generate_transcript",
        "get_interaction_context",
        "analyze_visual_context",
        "get_video_frame",
        "get_edited_frame",
        "set_style",
        "set_music",
        "set_audio_gains",
        "undo",
        "redo",
        "export_video",
        "get_export_status",
        "cancel_export",
        "get_agent_job_status",
        "get_agent_job_result",
        "cancel_agent_job"
      ]
    },
    "getAppState": {
      "observed": {
        "version": "1.0.0-rc.33",
        "projectOpen": false,
        "licensePlan": "free",
        "licenseMode": "live",
        "exportPhase": "idle"
      }
    },
    "latencyMs": {
      "launcherCheck": 23.055,
      "initialize": 83.497,
      "toolsList": 18.115,
      "getAppState": 6.722
    }
  },
  "safety": {
    "userProjectsAccessed": false,
    "recordingInvoked": false,
    "importInvoked": false,
    "editInvoked": false,
    "exportInvoked": false,
    "modelOrCaptionJobInvoked": false,
    "privatePathsTokensAndProcessIdsIncluded": false
  },
  "interpretation": {
    "result": "compatible",
    "statement": "The exact public standalone Claude plugin v1.0.2 completed MCP initialization, exact 60-tool discovery, and one benign get_app_state call against the exact public signed and notarized Cadre rc.33 app.",
    "historicalEvidenceRelationship": "This record safely supplements rather than replaces the frozen rc.20/plugin-v1.0.2 57-tool handshake or the frozen rc.18/plugin-v1.0.1 54-tool handshake. It specifically covers rc.33/plugin-v1.0.2 compatibility and the three added camera-layout tools."
  },
  "limitations": [
    "This compatibility proof covers only MCP initialization, exact tool discovery, and one read-only app-state call.",
    "It deliberately does not exercise recording, user projects, importing, editing mutations, captions, model downloads, export, visual output, model reasoning quality, or customer outcomes.",
    "The standalone plugin v1.0.2 is API-compatible with rc.33. The measured artifact is the independently published standalone archive, not the copy prepared inside the app bundle, so this record makes no claim about that bundled copy.",
    "Latency is a local round trip on one Mac and should not be generalized to other hardware or workloads."
  ]
}
