{
  "schemaVersion": "upservice.learning-course/v1",
  "slug": "flower-supply-chain",
  "sourceProvider": "youtube",
  "sourcePolicy": "youtube-only",
  "videoIdReplacementInstruction": "Each episode.youtubeId is verified against the public YouTube channel feed. Keep the 11-character IDs unchanged unless the corresponding public video is replaced.",
  "youtubeChannelUrl": "https://www.youtube.com/channel/UCsUsEwsUPU_Qhc_0EBUJPuw",
  "playlistTitle": "鲜花经营链从 0 到闭环｜MagicBall 实操课",
  "lastVerifiedAt": "2026-07-28T14:10:00Z",
  "totalDurationMinutes": 47,
  "episodes": [
    {
      "number": "01",
      "durationMinutes": 8,
      "youtubeId": "U6xly3o-1Cw",
      "youtubeUrl": "https://www.youtube.com/watch?v=U6xly3o-1Cw",
      "durationSeconds": 450.02,
      "title": {
        "zh": "从经营链驾驶舱进入真实项目",
        "en": "Enter the real project from the operating-chain cockpit"
      },
      "summary": {
        "zh": "从经营摘要进入 Project 100969，核对链身份、项目记录、刷新连续性和工作区页签操作。",
        "en": "Open Project 100969 from the operating summary and verify chain identity, native records, refresh continuity, and workspace tabs."
      },
      "objectives": {
        "zh": [
          "说出链身份 FLOWER-QIXI-SH-2026 与 8,800 枝净缺口。",
          "从经营摘要打开 Project 100969 原生页面。",
          "完成页签激活、拖拽排序和刷新连续性检查。"
        ],
        "en": [
          "Record the decision window, target shops, and net supply gap.",
          "Flag unverified on-hand, in-transit, loss, and safety-stock fields.",
          "Save the first demand snapshot and gap-calculation definition."
        ]
      },
      "operationStages": ["demand-baseline", "evidence-model"]
    },
    {
      "number": "02",
      "durationMinutes": 8,
      "youtubeId": "E3jQBJoy41I",
      "youtubeUrl": "https://www.youtube.com/watch?v=E3jQBJoy41I",
      "durationSeconds": 480.02,
      "title": {
        "zh": "看懂需求、MRP 与采购承诺",
        "en": "Understand demand, MRP, and purchasing commitments"
      },
      "summary": {
        "zh": "把 12,000 枝需求走到 Demand 100816、Plan Order 100000 和 Purchase Order 100102，并核对采购权限边界。",
        "en": "Trace 12,000 stems through Demand 100816, Plan Order 100000, and Purchase Order 100102 while respecting procurement permissions."
      },
      "objectives": {
        "zh": [
          "计算 8,800 枝净缺口与 9,240 枝采购组合。",
          "进入 Demand 100816 并核对计划订单。",
          "理解无会话时采购订单数据被拒绝投影。"
        ],
        "en": [
          "Create one project ID linked to the demand baseline.",
          "Assign sourcing, inventory, catalog, and delivery owners.",
          "Record the budget, milestones, and escalation conditions."
        ]
      },
      "operationStages": ["project-governance", "responsibility", "budget"]
    },
    {
      "number": "03",
      "durationMinutes": 8,
      "youtubeId": "mGxILOJkJ6M",
      "youtubeUrl": "https://www.youtube.com/watch?v=mGxILOJkJ6M",
      "durationSeconds": 480.02,
      "title": {
        "zh": "到货质检、库存与加工生产",
        "en": "Receiving QC, inventory, and processing production"
      },
      "summary": {
        "zh": "沿 PASS 与 HOLD 两条到货路径，核对 AssetReceipt、Asset、当前库存和 Production Run。",
        "en": "Follow PASS and HOLD receiving paths while verifying AssetReceipt, Asset, current inventory, and the Production Run."
      },
      "objectives": {
        "zh": [
          "区分 PASS 入库与 HOLD 零写入可用库存。",
          "核对批次 QIXI-B-20260726 的资产链。",
          "理解原料库存从 2,600 到当前 0 的去向。"
        ],
        "en": [
          "Create a comparable supplier quotation basis.",
          "Record timing, quality, and cold-chain risks beyond price.",
          "Create the purchase record and verify quantity, unit, and arrival time."
        ]
      },
      "operationStages": ["supplier-rfq", "quote-comparison", "purchase-order"]
    },
    {
      "number": "04",
      "durationMinutes": 7,
      "youtubeId": "pH8ka5W-3Tw",
      "youtubeUrl": "https://www.youtube.com/watch?v=pH8ka5W-3Tw",
      "durationSeconds": 440.02,
      "title": {
        "zh": "商品发布、门店订单与库存预留",
        "en": "Product publication, shop orders, and inventory reservations"
      },
      "summary": {
        "zh": "把生产产出发布为可售商品，创建 50 张门店订单和预留，并验证超量分配阻断。",
        "en": "Publish production output as a sellable product, create 50 shop orders and reservations, and verify the over-allocation guardrail."
      },
      "objectives": {
        "zh": [
          "核对 ProdActive、PtAsset 与 2,470 枝成品。",
          "理解 QOH 保持、ATP 从 2,470 归零。",
          "确认 2,500 枝超量请求新增订单为零。"
        ],
        "en": [
          "Record lot, inspection, grade, and loss.",
          "Separate available, reserved, in-transit, and exception inventory.",
          "Verify receipt and location, then save an inventory snapshot."
        ]
      },
      "operationStages": ["origin-grading", "cold-chain-dispatch", "inventory-receipt"]
    },
    {
      "number": "05",
      "durationMinutes": 8,
      "youtubeId": "6iycXJE8ATs",
      "youtubeUrl": "https://www.youtube.com/watch?v=6iycXJE8ATs",
      "durationSeconds": 480.02,
      "title": {
        "zh": "冷链、五个配送波次与门店签收",
        "en": "Cold chain, five delivery waves, and shop acceptance"
      },
      "summary": {
        "zh": "核对冷链 Shipment 100255、容量阻断、五个配送波次、原生 Shipment 100204 与开票收入。",
        "en": "Verify cold-chain Shipment 100255, capacity blocking, five delivery waves, native Shipment 100204, and invoiced revenue."
      },
      "objectives": {
        "zh": [
          "确认 9,240 枝不超过 9,600 枝冷链容量。",
          "理解一店一目的方对应一张原生 Shipment。",
          "区分 InvoiceFinalized 开票金额与已收款。"
        ],
        "en": [
          "Record the versioned conversion between stems, bunches, cartons, and SKUs.",
          "Validate price, effective time, and sellable inventory.",
          "Capture shop orders and retain allocation results."
        ]
      },
      "operationStages": ["product-assembly", "catalog-price", "order-allocation"]
    },
    {
      "number": "06",
      "durationMinutes": 8,
      "youtubeId": "Ye0occrxK-I",
      "youtubeUrl": "https://www.youtube.com/watch?v=Ye0occrxK-I",
      "durationSeconds": 452.69,
      "title": {
        "zh": "项目核算、经营复盘与闭环自检",
        "en": "Project economics, operating review, and closure checks"
      },
      "summary": {
        "zh": "区分原生事实与场景假设，进入 Project Economics，并用连续验证方法完成八入口闭环自检。",
        "en": "Separate native facts from scenario assumptions, enter Project Economics, and complete the eight-entry closure check with continuous verification."
      },
      "objectives": {
        "zh": [
          "核对收入 21,736、成本 16,511 与估算贡献 5,225。",
          "区分 1 条原生事实与 4 条场景假设成本。",
          "完成主场景连续 2 次与相邻边界 1 次验证。"
        ],
        "en": [
          "Create delivery waves and verify coverage of all 50 shops.",
          "Record exceptions, actions, acceptance, and final variance.",
          "Complete the end-to-end evidence check and archive the review."
        ]
      },
      "operationStages": ["delivery-planning", "exception-resolution", "audit-review"]
    }
  ],
  "downloads": [
    {
      "kind": "course-manifest",
      "path": "./course.json"
    },
    {
      "kind": "evidence-checklist",
      "path": "./evidence/operation-evidence-checklist.csv"
    },
    {
      "kind": "case-baseline-template",
      "path": "./evidence/case-baseline-template.csv"
    }
  ]
}
