{
  "lesson": "M-S025",
  "targetProduct": "not_run",
  "nativePractice": "author_deterministic_sine_transfer_fixtures_not_Adobe_recording",
  "dataIdentity": "trusted-manifest comparison; no TTS, voice, cloud export or official CLI",
  "assets": [],
  "sources": [
    {
      "url": "https://helpx.adobe.com/podcast/adobe-podcast-faq.html",
      "title": "Adobe Podcast FAQ（2026-04-15更新）",
      "feature": "官方列逐人高质量轨道下载及WAV 48kHz/16bit；本课在下载后另加作者交接完整性门槛。"
    },
    {
      "url": "https://podcast.adobe.com/en/plans",
      "title": "Adobe Podcast当前计划",
      "feature": "原始逐人录音下载的当前计划条件；不把作者SHA工具称官方功能。"
    },
    {
      "url": "https://docs.python.org/3/library/hashlib.html",
      "title": "Python官方hashlib文档",
      "feature": "作者脚本用SHA-256比较批准文件字节；不是Adobe官方工具。"
    },
    {
      "url": "https://docs.python.org/3/library/wave.html",
      "title": "Python官方wave文档",
      "feature": "读取PCM WAV的帧数、采样率、位深与指定帧区间，支持作者确定性区块验收。"
    }
  ],
  "handoffFiles": [
    {
      "path": "recipient-gap/guest-source.wav",
      "sha256": "6253e5c1b5979cfb1159b000093a190c394908de844186262ad761c89cd352a0"
    },
    {
      "path": "recipient-gap/host-source.wav",
      "sha256": "2ee94712bb4bf12c278cbe9d3b6587037260ab64fd6ba1b62f2ae2ce172c4ae9"
    },
    {
      "path": "recipient-gap/program-mix.wav",
      "sha256": "c20b887e4b5a8e0e9425cec8ddd7c37d436176a2e7ce1a2445b8a5c289137e62"
    },
    {
      "path": "recipient-good/guest-source.wav",
      "sha256": "53d48ed030bd2f0d87f82b5513ddd851cb2649372cccdf9ec40bc709fe5ee7b0"
    },
    {
      "path": "recipient-good/host-source.wav",
      "sha256": "2ee94712bb4bf12c278cbe9d3b6587037260ab64fd6ba1b62f2ae2ce172c4ae9"
    },
    {
      "path": "recipient-good/program-mix.wav",
      "sha256": "c20b887e4b5a8e0e9425cec8ddd7c37d436176a2e7ce1a2445b8a5c289137e62"
    },
    {
      "path": "recipient-missing/host-source.wav",
      "sha256": "2ee94712bb4bf12c278cbe9d3b6587037260ab64fd6ba1b62f2ae2ce172c4ae9"
    },
    {
      "path": "recipient-missing/program-mix.wav",
      "sha256": "c20b887e4b5a8e0e9425cec8ddd7c37d436176a2e7ce1a2445b8a5c289137e62"
    },
    {
      "path": "recipient-role-error/guest-source.wav",
      "sha256": "c20b887e4b5a8e0e9425cec8ddd7c37d436176a2e7ce1a2445b8a5c289137e62"
    },
    {
      "path": "recipient-role-error/host-source.wav",
      "sha256": "2ee94712bb4bf12c278cbe9d3b6587037260ab64fd6ba1b62f2ae2ce172c4ae9"
    },
    {
      "path": "recipient-role-error/program-mix.wav",
      "sha256": "c20b887e4b5a8e0e9425cec8ddd7c37d436176a2e7ce1a2445b8a5c289137e62"
    },
    {
      "path": "sender/guest-source.wav",
      "sha256": "53d48ed030bd2f0d87f82b5513ddd851cb2649372cccdf9ec40bc709fe5ee7b0"
    },
    {
      "path": "sender/host-source.wav",
      "sha256": "2ee94712bb4bf12c278cbe9d3b6587037260ab64fd6ba1b62f2ae2ce172c4ae9"
    },
    {
      "path": "sender/program-mix.wav",
      "sha256": "c20b887e4b5a8e0e9425cec8ddd7c37d436176a2e7ce1a2445b8a5c289137e62"
    }
  ],
  "manifestSha256": "a0b313b01ab0e0b05e23e8d12ceadd1d1f31b376bad7e06f151396536e0110e7"
}
