{
  "schemaVersion": "deck-intelligence.v1",
  "id": "019dd923-5e88-73ef-bd5d-80806e6b958f",
  "slug": "b1ac5794d68b3e09",
  "title": "2021 Benedict Evans 2021 Three Steps to the Future",
  "subtitle": "Benedict Evans",
  "author": "Benedict Evans",
  "pageCount": 94,
  "kind": "consulting-deck",
  "orientation": "landscape",
  "aspectRatio": 1.778,
  "document": {
    "id": "019dd923-5e88-73ef-bd5d-80806e6b958f",
    "slug": "b1ac5794d68b3e09",
    "title": "2021 Benedict Evans 2021 Three Steps to the Future",
    "rawTitle": "2021 Benedict Evans 2021 Three Steps to the Future",
    "authorId": "BenedictEvans",
    "authorName": "Benedict Evans",
    "authorDisplay": "Benedict Evans",
    "kind": {
      "slug": "consulting-deck",
      "label": "Consulting deck"
    },
    "sourceType": {
      "slug": "independent_analyst",
      "label": "Independent analyst"
    },
    "fileName": "2021-Benedict-Evans-2021-Three-Steps-to-the-Future.pdf",
    "sourceUrl": "www.ben-evans.com",
    "sourceDate": "2021-11-01 00:00:00",
    "presentationDate": null,
    "ingestedAt": "2026-04-25 11:55:50+00",
    "status": "ready",
    "pageCount": 94,
    "orientation": "landscape",
    "aspectRatio": 1.778,
    "targetCompany": null,
    "targetTicker": null,
    "metadata": {
      "local_root": "/tmp/legacy-images/b1ac5794d68b3e09",
      "origin_corpus": "consulting"
    }
  },
  "coverage": {
    "pageCount": 94,
    "pagesIndexed": 94,
    "pagesWithImages": 94,
    "pagesWithMetadata": 94,
    "imageCoveragePct": 100,
    "metadataCoveragePct": 100,
    "componentCount": 499,
    "chartCount": 44,
    "metricSlides": 0,
    "toolMatches": 175,
    "documentToolMatches": 0,
    "frameworkMatches": 20,
    "arcMatches": 2,
    "beatMatches": 8,
    "loopMatches": 7,
    "patternMatches": 0,
    "storymakersMatch": true,
    "scoreAvailable": true,
    "reviewAvailable": true,
    "activistThesisAvailable": false,
    "pitchdeckMetadataAvailable": false,
    "pitchdeckProfileAvailable": false
  },
  "blocks": [],
  "matches": {
    "arcs": [
      {
        "arc": {
          "name": "The Onion",
          "slug": "onion",
          "status": "active",
          "bestFor": "Root cause analysis, diagnostics",
          "canonId": "019dd956-627f-76b1-b286-0c575846d572",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
        "evidence": "Deck peels back layers: surface hype (Web3/metaverse pp 4-19), first layer (present cloud deployment pp 36-48), deeper layer (past disruption patterns pp 50-79), core insight (tech replaces whole industries pp 83-87), implications (investment landscape pp 88-93).",
        "isPrimary": true,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:28.977035+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
        "evidence": "Page 2 roadmap explicitly names three buckets — Future (facts about visions), Present (so-what deployment), Past (now-what disruption playbook).",
        "isPrimary": false,
        "confidence": 60,
        "extraction": {
          "at": "2026-04-29 13:07:28.977035+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      }
    ],
    "beats": [
      {
        "to": 34,
        "arc": {
          "name": "The Onion",
          "slug": "onion",
          "status": "active",
          "bestFor": "Root cause analysis, diagnostics",
          "canonId": "019dd956-627f-76b1-b286-0c575846d572",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 1,
        "name": "Surface Observation",
        "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
        "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
        "beatType": {
          "name": "Surface Observation",
          "slug": "onion-surface-observation",
          "status": "active",
          "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
          "version": 1,
          "description": null
        },
        "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
        "position": 1,
        "isPrimaryArc": true,
        "parentBeatType": {
          "name": "Setup",
          "slug": "setup",
          "status": "active",
          "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
          "version": 1,
          "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
        },
        "alignedBlockIds": null,
        "matchConfidence": 70
      },
      {
        "to": 48,
        "arc": {
          "name": "The Onion",
          "slug": "onion",
          "status": "active",
          "bestFor": "Root cause analysis, diagnostics",
          "canonId": "019dd956-627f-76b1-b286-0c575846d572",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 35,
        "name": "First Layer",
        "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
        "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
        "beatType": {
          "name": "First Layer",
          "slug": "onion-first-layer",
          "status": "active",
          "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
          "version": 1,
          "description": null
        },
        "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
        "position": 2,
        "isPrimaryArc": true,
        "parentBeatType": {
          "name": "Development",
          "slug": "development",
          "status": "active",
          "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
          "version": 1,
          "description": "The middle stretch in arcs that have one. Often where length problems creep in."
        },
        "alignedBlockIds": null,
        "matchConfidence": 70
      },
      {
        "to": 79,
        "arc": {
          "name": "The Onion",
          "slug": "onion",
          "status": "active",
          "bestFor": "Root cause analysis, diagnostics",
          "canonId": "019dd956-627f-76b1-b286-0c575846d572",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 49,
        "name": "Deeper Layer",
        "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
        "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
        "beatType": {
          "name": "Deeper Layer",
          "slug": "onion-deeper-layer",
          "status": "active",
          "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
          "version": 1,
          "description": null
        },
        "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
        "position": 3,
        "isPrimaryArc": true,
        "parentBeatType": {
          "name": "Development",
          "slug": "development",
          "status": "active",
          "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
          "version": 1,
          "description": "The middle stretch in arcs that have one. Often where length problems creep in."
        },
        "alignedBlockIds": null,
        "matchConfidence": 70
      },
      {
        "to": 87,
        "arc": {
          "name": "The Onion",
          "slug": "onion",
          "status": "active",
          "bestFor": "Root cause analysis, diagnostics",
          "canonId": "019dd956-627f-76b1-b286-0c575846d572",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 80,
        "name": "Core Insight",
        "beatId": "019dd95a-07a7-7579-bd64-db757eda7dc4",
        "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
        "beatType": {
          "name": "Core Insight",
          "slug": "onion-core-insight",
          "status": "active",
          "canonId": "019dd9b8-0d41-766a-8ad4-4ba6c6e72446",
          "version": 1,
          "description": null
        },
        "evidence": "Conclusion: platform leverage + tech expanding TAM from $90bn books to $50tr consumer",
        "position": 4,
        "isPrimaryArc": true,
        "parentBeatType": {
          "name": "Turn",
          "slug": "turn",
          "status": "active",
          "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
          "version": 1,
          "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
        },
        "alignedBlockIds": null,
        "matchConfidence": 70
      },
      {
        "to": 94,
        "arc": {
          "name": "The Onion",
          "slug": "onion",
          "status": "active",
          "bestFor": "Root cause analysis, diagnostics",
          "canonId": "019dd956-627f-76b1-b286-0c575846d572",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 88,
        "name": "Implications",
        "beatId": "019dd95a-07a7-7579-bd64-dcf3541fdcc9",
        "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
        "beatType": {
          "name": "Implications",
          "slug": "onion-implications",
          "status": "active",
          "canonId": "019dd9b8-0dda-7730-893d-deaac7e9c295",
          "version": 1,
          "description": null
        },
        "evidence": "Investment firehose, Tesla > car industry valuation, second 50 years of tech",
        "position": 5,
        "isPrimaryArc": true,
        "parentBeatType": {
          "name": "Reflection",
          "slug": "reflection",
          "status": "active",
          "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
          "version": 1,
          "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
        },
        "alignedBlockIds": null,
        "matchConfidence": 70
      },
      {
        "to": 34,
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 3,
        "name": "The Facts (What)",
        "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
        "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
        "beatType": {
          "name": "The Facts (What)",
          "slug": "triple-take-the-facts-what",
          "status": "active",
          "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
          "version": 1,
          "description": null
        },
        "evidence": "Future section catalogs Web3 + metaverse claims and data",
        "position": 1,
        "isPrimaryArc": false,
        "parentBeatType": {
          "name": "Setup",
          "slug": "setup",
          "status": "active",
          "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
          "version": 1,
          "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
        },
        "alignedBlockIds": null,
        "matchConfidence": 60
      },
      {
        "to": 48,
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 35,
        "name": "The Implications (So What)",
        "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
        "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
        "beatType": {
          "name": "The Implications (So What)",
          "slug": "triple-take-the-implications-so-what",
          "status": "active",
          "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
          "version": 1,
          "description": null
        },
        "evidence": "Present section spells out what cloud/SaaS deployment means",
        "position": 2,
        "isPrimaryArc": false,
        "parentBeatType": {
          "name": "Reflection",
          "slug": "reflection",
          "status": "active",
          "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
          "version": 1,
          "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
        },
        "alignedBlockIds": null,
        "matchConfidence": 60
      },
      {
        "to": 94,
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 49,
        "name": "The Action (Now What)",
        "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
        "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
        "beatType": {
          "name": "The Action (Now What)",
          "slug": "triple-take-the-action-now-what",
          "status": "active",
          "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
          "version": 1,
          "description": null
        },
        "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
        "position": 3,
        "isPrimaryArc": false,
        "parentBeatType": {
          "name": "Resolution",
          "slug": "resolution",
          "status": "active",
          "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
          "version": 1,
          "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
        },
        "alignedBlockIds": null,
        "matchConfidence": 60
      }
    ],
    "loops": [
      {
        "to": 19,
        "from": 7,
        "loop": {
          "name": "02_pattern_hunter",
          "slug": "02-pattern-hunter",
          "status": "active",
          "bestFor": "Time-pressed audiences, building consensus, when data is strong",
          "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
          "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
          "familyLabel": null,
          "categoryName": "Logical Reasoning",
          "categorySlug": "logical-reasoning"
        },
        "matchId": "019dd95a-08f8-7619-ac2e-302a6445ecce",
        "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
        "position": 1,
        "objective": "Frame Web3 as real-but-ambiguous via converging data points",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:29.779839+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 28,
        "from": 20,
        "loop": {
          "name": "02_pattern_hunter",
          "slug": "02-pattern-hunter",
          "status": "active",
          "bestFor": "Time-pressed audiences, building consensus, when data is strong",
          "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
          "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
          "familyLabel": null,
          "categoryName": "Logical Reasoning",
          "categorySlug": "logical-reasoning"
        },
        "matchId": "019dd95a-08f8-7619-ac2e-3584a4ab743d",
        "evidence": "Mood boards → VR sales → Roblox vs games TAM → 'doesn't guarantee universal appeal' p28",
        "position": 2,
        "objective": "Stress-test the metaverse thesis against actual traction",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:29.779839+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 34,
        "from": 29,
        "loop": {
          "name": "09_precedent",
          "slug": "09-precedent",
          "status": "active",
          "bestFor": "Risk mitigation, strategy validation, building confidence in new approaches",
          "canonId": "019dd956-695f-7615-8f82-39d919918314",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Precedent Case -> What Happened -> The Parallel -> Applied Learning",
          "description": "Use historical or external examples to validate your approach",
          "familyLabel": null,
          "categoryName": "Validation",
          "categorySlug": "validation"
        },
        "matchId": "019dd95a-08f8-7619-ac2e-39cb042f9533",
        "evidence": "Mobile-data-decade lag (p31), AI/VR winters (p32), 1995 web confusion (p33) all cited as parallels",
        "position": 3,
        "objective": "Use mobile/AI/web history to calibrate expectations on tech timing",
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:29.779839+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 48,
        "from": 36,
        "loop": {
          "name": "03_aha_moment",
          "slug": "03-aha-moment",
          "status": "active",
          "bestFor": "Data-heavy sections, research findings, analytical arguments",
          "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Problem/Question -> What the Data Shows -> The Insight",
          "description": "Establish a tension, present data, then deliver the insight that changes everything",
          "familyLabel": null,
          "categoryName": "Narrative",
          "categorySlug": "narrative"
        },
        "matchId": "019dd95a-08f8-7619-ac2e-3da6cc56a25f",
        "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
        "position": 4,
        "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:29.779839+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 58,
        "from": 50,
        "loop": {
          "name": "13_domino_effect",
          "slug": "13-domino-effect",
          "status": "active",
          "bestFor": "Strategy roadmaps, showing ROI of a specific feature, causal analysis",
          "canonId": "019dd956-6b0a-74a4-9ebb-77e5dc8152aa",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Trigger Action -> First Reaction -> Second Reaction -> Final Impact",
          "description": "Demonstrate how a single small strategic move triggers a cascade of positive outcomes",
          "familyLabel": null,
          "categoryName": "Causation",
          "categorySlug": "causation"
        },
        "matchId": "019dd95a-08f8-7619-ac2e-414f2b9433e3",
        "evidence": "Trigger 'atoms stop mattering' (p51) → unbundling diagram (p53) → TV penetration drop → new entrants outspending incumbents",
        "position": 5,
        "objective": "Show the same internet trigger toppling music, newspapers, then TV",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:29.779839+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 79,
        "from": 59,
        "loop": {
          "name": "02_pattern_hunter",
          "slug": "02-pattern-hunter",
          "status": "active",
          "bestFor": "Time-pressed audiences, building consensus, when data is strong",
          "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
          "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
          "familyLabel": null,
          "categoryName": "Logical Reasoning",
          "categorySlug": "logical-reasoning"
        },
        "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
        "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
        "position": 6,
        "objective": "Stack retail-disruption data points into a cumulative case",
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:29.779839+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 93,
        "from": 83,
        "loop": {
          "name": "28_ladder_abstraction",
          "slug": "28-ladder-abstraction",
          "status": "active",
          "bestFor": "Training, thought leadership, making complex ideas accessible",
          "canonId": "019dd956-7130-74be-a168-9f76c603044d",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Concrete Example -> The Pattern It Represents -> The Universal Principle -> Back to Specific Application",
          "description": "Move between concrete examples and abstract principles to make ideas stick",
          "familyLabel": null,
          "categoryName": "Explanation",
          "categorySlug": "explanation"
        },
        "matchId": "019dd95a-08f8-7619-ac2e-4b7640f24877",
        "evidence": "Concrete Apple > music+Netflix → platform leverage → $50tr TAM ladder (p87) → Tesla valuation = entire car industry",
        "position": 7,
        "objective": "Climb from concrete music numbers to the universal principle that tech now competes with whole industries",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:29.779839+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      }
    ],
    "tools": [
      {
        "tool": {
          "name": "The Rule of Three",
          "slug": "the-rule-of-three",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-8962-75cf-b4f8-9394501a6f33",
          "version": 1,
          "bodyDocId": null,
          "description": "Ideas presented in threes are more memorable and satisfying",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-57a95771e2a4",
        "evidence": "Explicit three-part structure announced for the deck",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Three Pillars",
          "slug": "three-pillars",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-81ef-7455-a365-b234d95a6bbb",
          "version": 1,
          "bodyDocId": null,
          "description": "Three major supporting arguments that are MECE and address key concerns",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Architect",
        "layer": "block",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-5373d512da7a",
        "evidence": "Three labelled circles — Future / Present / Past — as roadmap",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Curiosity Gap",
          "slug": "curiosity-gap",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9703-74ef-8b85-96dfd8525025",
          "version": 1,
          "bodyDocId": null,
          "description": "People seek missing information - create open questions that demand resolution",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-aa7c103ab7da",
        "evidence": "Title 'Is an iPhone open or closed? Yes' poses paradox",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Storytelling Effect",
          "slug": "storytelling-effect",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-981b-74f9-9096-5c8df03dab5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Stories are remembered up to 22x better than facts alone",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-1e417632128c",
        "evidence": "Frame.io named as concrete client example replacing email/Slack/sheets",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 45,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Before-After-Bridge",
          "slug": "before-after-bridge",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-8604-7188-883f-42370288ad05",
          "version": 1,
          "bodyDocId": null,
          "description": "Narrative structure: Paint the before, show the after, explain the bridge",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-292f2a75e7f1",
        "evidence": "Callout: 'Before >1,000 FTEs / Now: 400 / Target: <100'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 47,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "The Rule of Three",
          "slug": "the-rule-of-three",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-8962-75cf-b4f8-9394501a6f33",
          "version": 1,
          "bodyDocId": null,
          "description": "Ideas presented in threes are more memorable and satisfying",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-4fe0ffe6a558",
        "evidence": "Three-stage diagram of the unbundling pattern",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 53,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Storytelling Effect",
          "slug": "storytelling-effect",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-981b-74f9-9096-5c8df03dab5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Stories are remembered up to 22x better than facts alone",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-ad3542ca89b7",
        "evidence": "Shein narrative: new UX + new data models + acquisition budget",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 72,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Curiosity Gap",
          "slug": "curiosity-gap",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9703-74ef-8b85-96dfd8525025",
          "version": 1,
          "bodyDocId": null,
          "description": "People seek missing information - create open questions that demand resolution",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-bc6f8964250d",
        "evidence": "Title is a binary question: 'good tech? Or good retailing?'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 76,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Curiosity Gap",
          "slug": "curiosity-gap",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9703-74ef-8b85-96dfd8525025",
          "version": 1,
          "bodyDocId": null,
          "description": "People seek missing information - create open questions that demand resolution",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-c00cb159bdeb",
        "evidence": "Question forces choice: '1995 or 1900?'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 77,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Curiosity Gap",
          "slug": "curiosity-gap",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9703-74ef-8b85-96dfd8525025",
          "version": 1,
          "bodyDocId": null,
          "description": "People seek missing information - create open questions that demand resolution",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-cb8ae89bdb2e",
        "evidence": "Callout 'Is a good digital experience a digital problem, or a company problem?'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 78,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Curiosity Gap",
          "slug": "curiosity-gap",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9703-74ef-8b85-96dfd8525025",
          "version": 1,
          "bodyDocId": null,
          "description": "People seek missing information - create open questions that demand resolution",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-933a-1a86f73e8953",
        "evidence": "Closing question: 'Detroit, or retailers?' forces audience inference",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 93,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Argument from Analogy",
          "slug": "argument-from-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9e3d-7762-a994-72a2f7104e7c",
          "version": 1,
          "bodyDocId": null,
          "description": "Drawing conclusions based on similarities between situations",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-6ee5a7072f3e",
        "evidence": "Title 'Web3 = Open Source 2' explicitly draws parallel to open source",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Tricolon",
          "slug": "tricolon",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-a13d-7356-9038-da27abe565f8",
          "version": 1,
          "bodyDocId": null,
          "description": "Three parallel phrases of increasing length or intensity",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "loop",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-a51896809dff",
        "evidence": "Three-word verdict in title — early / exciting / unclear",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 18,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Argument from Analogy",
          "slug": "argument-from-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9e3d-7762-a994-72a2f7104e7c",
          "version": 1,
          "bodyDocId": null,
          "description": "Drawing conclusions based on similarities between situations",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-b53dfffa805f",
        "evidence": "Direct historical-parallel framing — 1994 mood board for today's metaverse",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 22,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Contrast Pairs",
          "slug": "contrast-pairs",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9b77-70d3-88b1-f34e26f60860",
          "version": 1,
          "bodyDocId": null,
          "description": "Creating tension through opposites: Before↔After, Problem↔Solution, Pain↔Relief",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "loop",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-b0dab66f257f",
        "evidence": "Two columns: 1994 'Information Superhighway' vs 2021 'Metaverse'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 22,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Argument from Analogy",
          "slug": "argument-from-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9e3d-7762-a994-72a2f7104e7c",
          "version": 1,
          "bodyDocId": null,
          "description": "Drawing conclusions based on similarities between situations",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-e18a4be8e0a5",
        "evidence": "Mobile data history applied to current tech-vision timing",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 31,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Callback",
          "slug": "callback",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-a3a9-708f-b4a3-d3da2181c576",
          "version": 1,
          "bodyDocId": null,
          "description": "Referencing earlier content for payoff and cohesion",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "loop",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-233511881a68",
        "evidence": "'Welcome to 2005' callback foreshadows the 'Welcome to 2007' on p59",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 46,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Causal Chain",
          "slug": "causal-chain",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9e98-7269-907b-8cf727e9499d",
          "version": 1,
          "bodyDocId": null,
          "description": "Showing how one event leads to another in sequence",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-4b4f033c1ac6",
        "evidence": "Three-circle arrow diagram: value chains break → new entrants → new winners",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 53,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Callback",
          "slug": "callback",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-a3a9-708f-b4a3-d3da2181c576",
          "version": 1,
          "bodyDocId": null,
          "description": "Referencing earlier content for payoff and cohesion",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "loop",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-70ecc6a087b2",
        "evidence": "'Welcome to 2007' echoes 'Welcome to 2005' callback structure",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 59,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Tricolon",
          "slug": "tricolon",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-a13d-7356-9038-da27abe565f8",
          "version": 1,
          "bodyDocId": null,
          "description": "Three parallel phrases of increasing length or intensity",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "loop",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-a39d8d891537",
        "evidence": "Three parallel clauses: 'we personalise / you track / they violate'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 69,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Argument from Analogy",
          "slug": "argument-from-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9e3d-7762-a994-72a2f7104e7c",
          "version": 1,
          "bodyDocId": null,
          "description": "Drawing conclusions based on similarities between situations",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-b736c7e20ac1",
        "evidence": "'Department stores were Amazon, once' historical parallel",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 75,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Argument from Analogy",
          "slug": "argument-from-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9e3d-7762-a994-72a2f7104e7c",
          "version": 1,
          "bodyDocId": null,
          "description": "Drawing conclusions based on similarities between situations",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-c79faf98be0e",
        "evidence": "Drags in two precedent eras for comparison",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 77,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Callback",
          "slug": "callback",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-a3a9-708f-b4a3-d3da2181c576",
          "version": 1,
          "bodyDocId": null,
          "description": "Referencing earlier content for payoff and cohesion",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "loop",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-dbe13abc9f3c",
        "evidence": "Title 'Past, future, present' callback to opening three-pillar roadmap",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 82,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Build-Up (Gradatio)",
          "slug": "build-up-gradatio",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-a19a-73fd-9f74-c3f50dbb266d",
          "version": 1,
          "bodyDocId": null,
          "description": "Arranging ideas in ascending order of importance or intensity",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "loop",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-ef40823896f0",
        "evidence": "Four-step ladder of escalating $: $90bn books → $1tr ads → $20tr retail → $50tr consumer",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 87,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Causal Chain",
          "slug": "causal-chain",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9e98-7269-907b-8cf727e9499d",
          "version": 1,
          "bodyDocId": null,
          "description": "Showing how one event leads to another in sequence",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-f1cc914d5ac1",
        "evidence": "Arrow chain showing tech moving up TAM ladder",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 87,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Argument from Analogy",
          "slug": "argument-from-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9e3d-7762-a994-72a2f7104e7c",
          "version": 1,
          "bodyDocId": null,
          "description": "Drawing conclusions based on similarities between situations",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-933a-1df129568e5e",
        "evidence": "Auto-industry precedent applied to tech-vs-deployers question",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 93,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-5a1fab676738",
        "evidence": "Subtitle 'visions versus deployment and disruption' states the thesis",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "AIDA Model",
          "slug": "aida-model",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-86fc-773c-813f-d416714b8413",
          "version": 1,
          "bodyDocId": null,
          "description": "Attention, Interest, Desire, Action - classic persuasion sequence",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "20907b47-e3e4-45a3-b817-2edcc2537385",
        "evidence": "The great rebranding",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:10.553268+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-5fc8381b1abe",
        "evidence": "Callout 'Redefine the vision and set a broader goal, for both VR and crypto' frames as rebranding",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Authority Bias",
          "slug": "authority-bias",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-c38d-70b9-a284-b2b479763356",
          "version": 1,
          "bodyDocId": null,
          "description": "Expert opinions are weighted more heavily - cite credible sources",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Architect",
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-6557d76979f9",
        "evidence": "Quote attributed to Voltaire borrows historical authority",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-684022322e45",
        "evidence": "Holy-Roman-Empire analogy applied to crypto/blockchain naming",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Opening Hooks",
          "slug": "opening-hooks",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-aeb0-77d5-bfbd-9cd9a6be8186",
          "version": 1,
          "bodyDocId": null,
          "description": "Techniques to capture attention: Startling statistic, provocative question, short story, analogy, contrast",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-625ac11a1358",
        "evidence": "Voltaire quote opens Web3 section as provocative hook",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Before-After-Bridge",
          "slug": "before-after-bridge",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-8604-7188-883f-42370288ad05",
          "version": 1,
          "bodyDocId": null,
          "description": "Narrative structure: Paint the before, show the after, explain the bridge",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "035f8467-f363-4ce9-bc2f-65d4217f2a03",
        "evidence": "Web (Users read, Publishers create and make money) -> Web 2.0 (Users create, Networks control & make money) -> Web3 (Users create, Users control networks & money)",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 21:59:10.761363+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-7317c960d6a0",
        "evidence": "Title states the thesis equation",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Analytical method",
          "slug": "analytical-method",
          "status": "active",
          "bestFor": null,
          "canonId": "b42c4911-7946-49b5-951c-5f3d23f4e2bd",
          "version": 1,
          "bodyDocId": null,
          "description": "Diagnostic / structuring methods (5-whys, fishbone, issue tree, hypothesis-driven).",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "1abffc3b-e0a0-45d1-afdb-c1feb912ebcb",
        "evidence": "Open source changed how code is written - Web3 tries to change where it runs",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.6,
        "extraction": {
          "at": "2026-07-16 21:59:10.831953+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Comparison frame",
          "slug": "comparison-frame",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-484b-7399-a4fc-d14644b99f93",
          "version": 1,
          "bodyDocId": null,
          "description": "Two or more states/subjects placed side by side to expose a gap.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "5a62864a-3dff-44c5-9369-8e902e06ec5d",
        "evidence": "Closed and centralised -> Open and decentralised",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:10.902663+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 10,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-7e802cfc0c1a",
        "evidence": "Self-aware title 'Obligatory market cap chart'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-1b83-7130-9338-7b0a1d61ff47",
        "evidence": "Callout annotates 'billions of dollars of real money invested'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chartjunk Elimination",
          "slug": "chartjunk-elimination",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
          "version": 1,
          "bodyDocId": null,
          "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "9928f90f-880c-4900-b4d7-83c0ac002a03",
        "evidence": "Market capitalisations for the two largest crypto networks ($bn)",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 21:59:10.972106+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-1b83-7130-9338-749e8df33fd2",
        "evidence": "Market cap chart visualises crypto growth",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-83a6f30fba24",
        "evidence": "Title names the use case being evaluated",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-86fdf46bb4e7",
        "evidence": "$tr-scale figures grounding the abstract concept",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-1b83-7130-9338-8802b4bb0c58",
        "evidence": "KPI dashboard for software-use traction (10m+ scale)",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-8e772c1e68b7",
        "evidence": "Title 'NFTs, today's white-hot idea' frames the topic",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-1b83-7130-9338-92cf5750f608",
        "evidence": "Callout positions NFTs as both experiment and building block",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-980ff683f560",
        "evidence": "Title 'A nice adoption curve' is the editorial verdict",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 16,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-1b83-7130-9338-97154bafabee",
        "evidence": "Adoption curve chart",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 16,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-9ce589ab1344",
        "evidence": "Callout 'A token price is neither, and both' is the slide insight",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 17,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Analytical method",
          "slug": "analytical-method",
          "status": "active",
          "bestFor": null,
          "canonId": "b42c4911-7946-49b5-951c-5f3d23f4e2bd",
          "version": 1,
          "bodyDocId": null,
          "description": "Diagnostic / structuring methods (5-whys, fishbone, issue tree, hypothesis-driven).",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "eaef7ec3-84a6-4631-8f2c-9c6d80312c7b",
        "evidence": "list/comparison: Market caps? A share price is an opinion of the future; operating metrics are data about the present. A token price is neither, and both.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:06.00944+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 17,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Problem Statement Canvas",
          "slug": "problem-statement-canvas",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-839d-744b-ad11-9bf3e3642a18",
          "version": 1,
          "bodyDocId": null,
          "description": "Structured definition of the problem: What? Who? Where? When? Scale?",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "c0d2bff8-886d-43db-a4c8-5ba4f1332dd9",
        "evidence": "list/comparison: Market caps? A share price is an opinion of the future; operating metrics are data about the present. A token price is neither, and both.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:05.974519+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 17,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-a1adb02db4ab",
        "evidence": "Title 'Early (still!), exciting, unclear' synthesises the loop",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 90,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 18,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Audience Definition",
          "slug": "audience-definition",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-7f2a-775d-aeee-ff099bcb7756",
          "version": 1,
          "bodyDocId": null,
          "description": "Six key questions: Who are they? What do they know? What do they believe? What do they care about? What do they fear? What decisions can they make?",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "790ea795-d5c8-4838-b985-fc0c4c47d73e",
        "evidence": "callout: So what do open or decentralised mean? Where, and how, at what layers?",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:06.113459+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Picture Superiority Effect",
          "slug": "picture-superiority-effect",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-c201-7014-bb58-3e85e3e11dfd",
          "version": 1,
          "bodyDocId": null,
          "description": "Pictures remembered 6x better than words - prioritize visuals over text",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-1b83-7130-9338-aced297fa764",
        "evidence": "Large iPhone photo carries the argument visually",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Section divider",
          "slug": "section-divider",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4c66-707d-8d1f-6e14547134c7",
          "version": 1,
          "bodyDocId": null,
          "description": "A transitional slide marking the start of a new section.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "b295eaca-265c-43a9-9843-ba562feeb351",
        "evidence": "title/headline: Metaverse",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 21:59:06.181409+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 20,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Big Idea Formula",
          "slug": "big-idea-formula",
          "status": "active",
          "bestFor": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
          "canonId": "019dd956-7dd1-74d7-9866-ffdef19ecfbf",
          "version": 1,
          "bodyDocId": "c30d7484-69e0-4e21-82cf-20fa0966869e",
          "description": "Nancy Duarte's articulation of how to frame a presentation's central message: the speaker's unique point of view plus what's at stake for the audience, expressed as one complete declarative sentence. The narrative-driven counterpart to Minto's analytical governing thought.",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "8feec287-a657-463b-9343-92bd3f405b8b",
        "evidence": "diagram/other: VR & AR as the next universal device after smartphones",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:06.251433+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 21,
        "whyItWorks": "Solves the topic-not-thesis trap and the stake-less recommendation trap simultaneously. A single declarative sentence with a verb forces the speaker's stance into the room; routing the consequence through the word 'you' translates internal urgency into the audience's currency. The result is short enough to be repeated after the meeting — and that repetition is the persuasion mechanism.",
        "antipattern": "A topic dressed as a thesis ('Sustainability Roadmap 2026'), a stake attached to the speaker rather than the audience, two ideas spliced with 'and', abstract verbs (leverage / unlock / empower) that survive deletion, or writing the Big Idea after the deck is already built so the slides don't actually defend it.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to commit to a single declarative thesis before slide one — a sentence that names the speaker's stance and routes a consequence through the audience's currency. Acts as the filter every slide, anecdote, and chart must ladder up to."
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-1b83-7130-9338-bbf90ac1cc9b",
        "evidence": "VR traction chart",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 23,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-bed73c7d49d4",
        "evidence": "Quest 2 sold 10m units in 12 months",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 23,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-c1a271248201",
        "evidence": "Title hypothesises 'Roblox as a model for the future?'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 25,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-c795c8b02e1f",
        "evidence": "'250-350m core gamers — same size as Snap, fraction of 1bn iPhone users'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 26,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-ccfe4483b4e3",
        "evidence": "Title 'mobile has changed the games TAM' states the so-what",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 27,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-1b83-7130-9338-c85a7556d52e",
        "evidence": "Market sizing chart $170bn games TAM",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 27,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-d092e88e45fc",
        "evidence": "Callout 'doesn't guarantee universal appeal' is the verdict",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 28,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-da88c59e1f95",
        "evidence": "Callout coins 'Tech determinism' as the named fallacy",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 30,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Opening Hooks",
          "slug": "opening-hooks",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-aeb0-77d5-bfbd-9cd9a6be8186",
          "version": 1,
          "bodyDocId": null,
          "description": "Techniques to capture attention: Startling statistic, provocative question, short story, analogy, contrast",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-d648eb5f6fac",
        "evidence": "Quote opens 2030 section: 'This is amazing - it must be part of the future'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 30,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Before-After-Bridge",
          "slug": "before-after-bridge",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-8604-7188-883f-42370288ad05",
          "version": 1,
          "bodyDocId": null,
          "description": "Narrative structure: Paint the before, show the after, explain the bridge",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "f2518d7e-6286-40b8-b65a-73a007101fb4",
        "evidence": "Mobile data didn't take off outside Japan until a decade after the dream began",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:13.922357+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 31,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-dd101a35356a",
        "evidence": "Mobile-data-took-a-decade-after-Japan as concrete precedent",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 31,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Analytical method",
          "slug": "analytical-method",
          "status": "active",
          "bestFor": null,
          "canonId": "b42c4911-7946-49b5-951c-5f3d23f4e2bd",
          "version": 1,
          "bodyDocId": null,
          "description": "Diagnostic / structuring methods (5-whys, fishbone, issue tree, hypothesis-driven).",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "56282b0f-ea80-40b2-976b-049c23559dd4",
        "evidence": "chart/line: Term frequency in English-language books",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:13.996337+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 32,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-e6a05a88e1db",
        "evidence": "Names AI Winter and VR Winter as historical episodes",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 32,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-e85ffd370410",
        "evidence": "'Winter' metaphor for tech downturn cycles",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 32,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Audience Definition",
          "slug": "audience-definition",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-7f2a-775d-aeee-ff099bcb7756",
          "version": 1,
          "bodyDocId": null,
          "description": "Six key questions: Who are they? What do they know? What do they believe? What do they care about? What do they fear? What decisions can they make?",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "7854a164-1a13-4751-b4b7-c7d4479dd68d",
        "evidence": "In 1995, the future shape of the 'internet' still looked very unclear",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.6,
        "extraction": {
          "at": "2026-07-16 21:59:14.072379+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 33,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Authority Bias",
          "slug": "authority-bias",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-c38d-70b9-a284-b2b479763356",
          "version": 1,
          "bodyDocId": null,
          "description": "Expert opinions are weighted more heavily - cite credible sources",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Architect",
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-ef386b88d22a",
        "evidence": "Lists 1990s confusion (FTP, Gopher, WAIS) to show experts didn't know",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 33,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Audience frame",
          "slug": "audience-frame",
          "status": "active",
          "bestFor": null,
          "canonId": "2a1eefbd-5be8-4600-898b-49dbfcf73ec8",
          "version": 1,
          "bodyDocId": null,
          "description": "Tools for modelling and segmenting the audience (persona, JTBD, segmentation).",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "70e0c3f0-5767-4c1f-8161-5811b9b07a0f",
        "evidence": "New ways to make software, networks and ownership? -> Identify, self-expression, place and self <- New ways to make screens immersive and universal?",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.6,
        "extraction": {
          "at": "2026-07-16 21:59:14.148159+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 34,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "optional",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Big Idea Formula",
          "slug": "big-idea-formula",
          "status": "active",
          "bestFor": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
          "canonId": "019dd956-7dd1-74d7-9866-ffdef19ecfbf",
          "version": 1,
          "bodyDocId": "c30d7484-69e0-4e21-82cf-20fa0966869e",
          "description": "Nancy Duarte's articulation of how to frame a presentation's central message: the speaker's unique point of view plus what's at stake for the audience, expressed as one complete declarative sentence. The narrative-driven counterpart to Minto's analytical governing thought.",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "94e9224e-9d2b-4a8b-bd29-e8b853ca282a",
        "evidence": "Sounds like a parody of marketing gibberish - but describes a generational change in enterprise tech",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
        "confidence": 0.6,
        "extraction": {
          "at": "2026-07-16 21:59:14.369232+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 37,
        "whyItWorks": "Solves the topic-not-thesis trap and the stake-less recommendation trap simultaneously. A single declarative sentence with a verb forces the speaker's stance into the room; routing the consequence through the word 'you' translates internal urgency into the audience's currency. The result is short enough to be repeated after the meeting — and that repetition is the persuasion mechanism.",
        "antipattern": "A topic dressed as a thesis ('Sustainability Roadmap 2026'), a stake attached to the speaker rather than the audience, two ideas spliced with 'and', abstract verbs (leverage / unlock / empower) that survive deletion, or writing the Big Idea after the deck is already built so the slides don't actually defend it.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to commit to a single declarative thesis before slide one — a sentence that names the speaker's stance and routes a consequence through the audience's currency. Acts as the filter every slide, anecdote, and chart must ladder up to."
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-f1368d856bff",
        "evidence": "Callout: 'sounds like a parody of marketing gibberish'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 37,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-fbf55a38e459",
        "evidence": "Title 'cloud is still just beginning' is the verdict",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 38,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "bbe8e9c3-77da-4e90-86be-3d1a041ebe10",
        "evidence": "chart/bar-stacked: Global enterprise IT spending ($bn)",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:14.442017+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 38,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9338-f7063af9b26e",
        "evidence": "'Only 10-15% of enterprise IT' is concrete diagnostic",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 38,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9338-fc36514a8e66",
        "evidence": "'Old paradigms have a long half-life' states pattern",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 39,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Data Story Arc",
          "slug": "data-story-arc",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Context → Conflict → Insight → Implication structure for data narratives",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "b03d5e63-1fb8-4fde-95e5-cd084deb4d37",
        "evidence": "Mainframes -> Client server, PCs, Oracle, Microsoft -> Cloud, SaaS, machine learning",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.6,
        "extraction": {
          "at": "2026-07-16 21:59:14.516119+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 39,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-0385759766be",
        "evidence": "'Half-life' radioactive metaphor for legacy tech",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 39,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-0ae0e9b3904b",
        "evidence": "Title coins 'hyperscalers' label",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 40,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-07706b54f720",
        "evidence": "'Alphabet + Microsoft spending over $40bn this year on cloud'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 40,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-0d48009da8a1",
        "evidence": "Callout 'step change in the opportunity' is the so-what",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 41,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Three-Act Structure",
          "slug": "three-act-structure",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-8812-7796-9105-e7bc0e405681",
          "version": 1,
          "bodyDocId": null,
          "description": "Setup, Confrontation, Resolution - classic dramatic structure",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "f0dba034-eb73-4128-93d3-f3109df0030d",
        "evidence": "Mainframes (IBM supplies you with a hardware/software system) -> Client server (Dozens of applications in your data centre) -> SaaS (Hundreds of applications (that you know about))",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:14.707946+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 41,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Data Story Arc",
          "slug": "data-story-arc",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Context → Conflict → Insight → Implication structure for data narratives",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "6222799a-542f-4b3f-8432-cef1197e645c",
        "evidence": "Average number of SaaS applications per Okta customer, by industry",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:14.794457+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 42,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-11199838223e",
        "evidence": "Callout 'structural change in the amount of software companies can use'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 43,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Data Story Arc",
          "slug": "data-story-arc",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Context → Conflict → Insight → Implication structure for data narratives",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "9f025cdf-50f3-4f49-9ba4-975dff757dbc",
        "evidence": "Average number of SaaS applications per team",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:14.92775+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 43,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-19f53bbba79a",
        "evidence": "Title 'cloud means workflows, not better file shares'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 44,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Aesthetic-Usability Effect",
          "slug": "aesthetic-usability-effect",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-c150-75ee-9212-183da76c56da",
          "version": 1,
          "bodyDocId": null,
          "description": "Attractive designs are perceived as easier to use and more trustworthy",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "4cf0f158-b98e-4a1f-9896-86275c76ea01",
        "evidence": "image/logo: Google Sheets logo, image/logo: Excel logo, image/logo: Figma logo",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 21:59:15.002496+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 44,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-173ec44af22a",
        "evidence": "'Don't put your spreadsheet on the web — find a better way'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 44,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Aha! Moment",
          "slug": "aha-moment",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-a5b5-7763-820e-b299c5f27a32",
          "version": 1,
          "bodyDocId": null,
          "description": "The moment when the audience realizes the value - design for insight revelation",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "a728bbb1-ffb7-46ec-a736-94c56018a8f5",
        "evidence": "Replaces email, Slack, file share, Google sheets and lots more email",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 21:59:15.083923+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 45,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Anadiplosis",
          "slug": "anadiplosis",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-a0a5-75f9-a98c-7b7d8ee377a1",
          "version": 1,
          "bodyDocId": null,
          "description": "Ending one clause with a word that begins the next",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "19a9cbfa-236c-4323-ae29-29213363f6f1",
        "evidence": "15-year-old concept ('Google Docs for video!') but the tech and the market are finally ready",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:15.158053+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 46,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-25c985c7a8c7",
        "evidence": "'15-year-old concept (Google Docs for video)'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 46,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Before-After-Bridge",
          "slug": "before-after-bridge",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-8604-7188-883f-42370288ad05",
          "version": 1,
          "bodyDocId": null,
          "description": "Narrative structure: Paint the before, show the after, explain the bridge",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "f0fbd3ec-9d86-4fb1-b8cc-9c406973e397",
        "evidence": "Before: > 1,000 FTEs managed supplier payments worldwide; Now: 400 FTEs in Shared Services; Target: <100 next year.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 21:59:15.233531+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 47,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-2fcd46af08df",
        "evidence": "Specific FTE counts at three time points",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 47,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-329488434734",
        "evidence": "Title 'Mass deployment' synthesises the present-section loop",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 48,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Flywheel",
          "slug": "flywheel",
          "status": "active",
          "bestFor": null,
          "canonId": "019de52d-1ad8-75ab-9027-a40365590152",
          "version": 1,
          "bodyDocId": null,
          "description": null,
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "34fe6c64-0d38-4f50-8b65-3bfe48570a99",
        "evidence": "Thousands more companies deploying everything we learned in the last decade, in ever more places",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:15.306764+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 48,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-3630a96fe8b5",
        "evidence": "Section header itself is the thesis: 'Everything the internet did to music or newspapers is now happening to everyone else'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 90,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 50,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-3f0f1bc06872",
        "evidence": "Callout 'one industry after another is disrupted' is the so-what",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 51,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Data Story Arc",
          "slug": "data-story-arc",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Context → Conflict → Insight → Implication structure for data narratives",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "2c8224d6-fc27-4bd2-ac19-14b4b5890218",
        "evidence": "Indexed revenue/subscription decline",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:15.491215+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 51,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-3b9ed4820eed",
        "evidence": "'When do the atoms stop mattering?' physical-vs-digital metaphor",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 51,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-474ebbb18729",
        "evidence": "Title is the editorial insight",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 52,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Analytical method",
          "slug": "analytical-method",
          "status": "active",
          "bestFor": null,
          "canonId": "b42c4911-7946-49b5-951c-5f3d23f4e2bd",
          "version": 1,
          "bodyDocId": null,
          "description": "Diagnostic / structuring methods (5-whys, fishbone, issue tree, hypothesis-driven).",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "10d8d253-1c9a-4fd3-9f0a-c56cc8a34233",
        "evidence": "Decline from peak, USA (indexed)",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:15.564195+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 52,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-435ac777a442",
        "evidence": "Title uses 'boiled frog' and 'gradually then suddenly' metaphors",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 52,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-52627afff4fc",
        "evidence": "Title coins 'The great unbundling' as named concept",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 53,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Audience frame",
          "slug": "audience-frame",
          "status": "active",
          "bestFor": null,
          "canonId": "2a1eefbd-5be8-4600-898b-49dbfcf73ec8",
          "version": 1,
          "bodyDocId": null,
          "description": "Tools for modelling and segmenting the audience (persona, JTBD, segmentation).",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "58c7b063-c9da-4738-adf5-7bfa7f1a72f3",
        "evidence": "The internet breaks apart old value chains and creates new ones - and we could have said that in 1995",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:09.119929+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 53,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "optional",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Narrative foundations (from the Storymakers methodology)",
          "slug": "narrative-foundations",
          "status": "active",
          "bestFor": null,
          "canonId": "019df269-258b-71bd-ad14-53598df04d2b",
          "version": 1,
          "bodyDocId": "019df269-2567-736e-8b9c-4ec77611334a",
          "description": "This skill focuses on the *adversarial* genre — activist campaigns, short",
          "familyLabel": "narrative-block",
          "categoryName": "Narrative & Transformation",
          "categorySlug": "narrative-transformation"
        },
        "agent": "storyteller",
        "layer": "slide",
        "agents": [
          "storyteller"
        ],
        "matchId": "73d88936-2c3e-40f9-a4a8-106cd9d8cbef",
        "evidence": "The great unbundling",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:09.153889+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 53,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-1b83-7130-9339-5a339d2fa23b",
        "evidence": "Chart annotation reinforces the headline number",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 54,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "db3f1f7d-d92b-4e68-8f29-02f9aa2c33da",
        "evidence": "chart/line: US TV household penetration",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 21:59:09.221737+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 54,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-563ad108020c",
        "evidence": "'US pay TV penetration is down a third from the peak'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 54,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Data Story Arc",
          "slug": "data-story-arc",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Context → Conflict → Insight → Implication structure for data narratives",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "5e7e9638-fc02-4241-99ff-173ab68ba667",
        "evidence": "US pay TV penetration is down a third from the peak",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:09.257267+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 54,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Authority Bias",
          "slug": "authority-bias",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-c38d-70b9-a284-b2b479763356",
          "version": 1,
          "bodyDocId": null,
          "description": "Expert opinions are weighted more heavily - cite credible sources",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Architect",
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-63161569ddf9",
        "evidence": "Quote leverages an executive's dismissal as ironic authority",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 55,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Call-and-Response",
          "slug": "call-and-response",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-a254-7484-a9b7-721eb21444a5",
          "version": 1,
          "bodyDocId": null,
          "description": "Engaging audience by creating pattern they complete mentally",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "68ba4c95-b346-49cb-9f0d-8048dc46a3e8",
        "evidence": "Jeff Bewkes, CEO of Time Warner, on Netflix, 2010",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:09.328401+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 55,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Opening Hooks",
          "slug": "opening-hooks",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-aeb0-77d5-bfbd-9cd9a6be8186",
          "version": 1,
          "bodyDocId": null,
          "description": "Techniques to capture attention: Startling statistic, provocative question, short story, analogy, contrast",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-5fa57c887b8b",
        "evidence": "'Albanian army' quote opens new-entrants beat",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 55,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chartjunk Elimination",
          "slug": "chartjunk-elimination",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
          "version": 1,
          "bodyDocId": null,
          "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "7ccfa671-5ca2-4581-bc1a-2ee7bddf6af8",
        "evidence": "chart/bar-stacked: 2021e content budgets ($bn)",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:09.431736+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 56,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-1b83-7130-9339-6bd73b681918",
        "evidence": "Competitive comparison chart",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 56,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-64e66eb0a762",
        "evidence": "$32bn callout — new entrants outspending content incumbents",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 56,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Market Segmentation Pyramid",
          "slug": "market-segmentation-pyramid",
          "status": "active",
          "bestFor": null,
          "canonId": "1c9f3543-c96f-4a5b-b4a4-9b2a412c0aaf",
          "version": 1,
          "bodyDocId": null,
          "description": null,
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "5d0f7e09-349b-4f16-bbda-b790e57903e3",
        "evidence": "2021e content budgets ($bn): $32bn",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:09.397164+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 56,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Before-After-Bridge",
          "slug": "before-after-bridge",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-8604-7188-883f-42370288ad05",
          "version": 1,
          "bodyDocId": null,
          "description": "Narrative structure: Paint the before, show the after, explain the bridge",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "f34132da-5a65-4430-842d-f4d2d8b2d548",
        "evidence": "UK 16-34s daily video viewing (minutes)",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:09.49766+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 57,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-6cc499bc7697",
        "evidence": "'UK 16-34s, US streaming bigger than entire UK TV industry'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 57,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Hypothesis-Driven Structure",
          "slug": "hypothesis-driven-structure",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-833f-7419-9932-be80362019a7",
          "version": 1,
          "bodyDocId": null,
          "description": "Start with a hypothesis and organize evidence to prove/disprove it",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "e3b59388-0032-42cd-9975-92c6ac08da3c",
        "evidence": "Now the TV has become a battleground, powered by the shift from live to streaming",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:09.644575+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 58,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Problem Statement Canvas",
          "slug": "problem-statement-canvas",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-839d-744b-ad11-9bf3e3642a18",
          "version": 1,
          "bodyDocId": null,
          "description": "Structured definition of the problem: What? Who? Where? When? Scale?",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "8797ca32-49f5-4ff0-8845-cbef418932af",
        "evidence": "Legacy TV advertising: $200bn",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:09.680022+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 58,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-76a2b11cca37",
        "evidence": "Callout 'deploying old ideas finally ready to work'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 59,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Aha! Moment",
          "slug": "aha-moment",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-a5b5-7763-820e-b299c5f27a32",
          "version": 1,
          "bodyDocId": null,
          "description": "The moment when the audience realizes the value - design for insight revelation",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "0958f6aa-0075-4890-a1c2-d61761f743a7",
        "evidence": "Deploying old ideas that are finally ready to work",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 21:59:09.748468+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 59,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Story Moments",
          "slug": "story-moments",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-ae4e-768d-a18b-108e6cda511e",
          "version": 1,
          "bodyDocId": null,
          "description": "Design key emotional beats: The Shock, The Vision, The Proof, The Choice, The Call",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "0b604b1f-a2dd-4e7d-8a5f-5b718d645315",
        "evidence": "YouTube launched in 2005, and Hulu in 2007",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:09.782761+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 59,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "cfc61357-3fc5-4bf8-893f-e0173dbc35bb",
        "evidence": "chart/line: Ecommerce as a share of addressable retail*",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:09.848789+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 60,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-7c3d3157dccd",
        "evidence": "Title 'future is unevenly distributed' references Gibson",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 61,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Chartjunk Elimination",
          "slug": "chartjunk-elimination",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
          "version": 1,
          "bodyDocId": null,
          "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "0a3a7775-f1b4-494f-8551-0c0b5b6734c1",
        "evidence": "chart/dot: Percentage of population buying online in last 3 months, Europe",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:09.955498+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 61,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-7b79e44f57fd",
        "evidence": "'80% Britain online vs less than a third of Italians'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 61,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Data Story Arc",
          "slug": "data-story-arc",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Context → Conflict → Insight → Implication structure for data narratives",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "2a1a2b14-ebde-4c5c-93b6-3bae11fdfbd5",
        "evidence": "Over 80% of people in Britain buy online regularly, but less than a third of Italians",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:09.916671+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 61,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "2x2 matrix",
          "slug": "matrix-2x2",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-50ab-72d1-8afb-3ab0a38e32a8",
          "version": 1,
          "bodyDocId": null,
          "description": "BCG matrix, importance/urgency, any axes-and-quadrants frame.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "804a6c96-a260-42a4-b334-d9d82cd4baa9",
        "evidence": "Excluding grocery, 40% of UK retail spending is now online",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:10.028958+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 62,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-85effca34b36",
        "evidence": "Title 'Retail unbundles' echoes the unbundling thesis",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 62,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-81327ad0e9f5",
        "evidence": "'40% of UK retail spending now online'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 62,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Data Story Arc",
          "slug": "data-story-arc",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Context → Conflict → Insight → Implication structure for data narratives",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "704dd961-2e45-4e51-ba07-913500d1d41f",
        "evidence": "UK ecommerce as % retail: 40%",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:10.063984+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 62,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "25eb7d9c-cb6e-48d4-be25-5875f8bb9c6e",
        "evidence": "chart/bar-stacked: US retail revenue by delivery model, 2020 ($bn)",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:10.20368+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 63,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "84b9174f-f2ef-4007-82e6-de157cc176df",
        "evidence": "chart/bar-stacked: Annual US parcel volume (bn)",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:10.306125+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 64,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-89f6bb9ec3d9",
        "evidence": "'Amazon $74bn shipping; larger than UPS or Fedex by 2022'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 64,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Flywheel",
          "slug": "flywheel",
          "status": "active",
          "bestFor": null,
          "canonId": "019de52d-1ad8-75ab-9027-a40365590152",
          "version": 1,
          "bodyDocId": null,
          "description": null,
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "8f5ade98-3065-42c1-916c-c0549aaae4fb",
        "evidence": "Amazon spent $74bn on shipping in the last 12 months, and expects to be larger than UPS or Fedex in the USA by 2022",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 21:59:10.272015+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 64,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "2x2 matrix",
          "slug": "matrix-2x2",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-50ab-72d1-8afb-3ab0a38e32a8",
          "version": 1,
          "bodyDocId": null,
          "description": "BCG matrix, importance/urgency, any axes-and-quadrants frame.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "ac8cdae8-b35d-4e07-8bd0-d20704b087fb",
        "evidence": "New channels, new aggregators",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:20.745246+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 65,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-8c6167d38a3c",
        "evidence": "Title states 'e-commerce leader on track to overtake car-commerce leader'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 65,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Audience Definition",
          "slug": "audience-definition",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-7f2a-775d-aeee-ff099bcb7756",
          "version": 1,
          "bodyDocId": null,
          "description": "Six key questions: Who are they? What do they know? What do they believe? What do they care about? What do they fear? What decisions can they make?",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "2b743680-54c5-40be-8d96-d4299aed5de4",
        "evidence": "The e-commerce leader is on track to overtake the car-commerce leader",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:20.703923+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 65,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Analytical method",
          "slug": "analytical-method",
          "status": "active",
          "bestFor": null,
          "canonId": "b42c4911-7946-49b5-951c-5f3d23f4e2bd",
          "version": 1,
          "bodyDocId": null,
          "description": "Diagnostic / structuring methods (5-whys, fishbone, issue tree, hypothesis-driven).",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "1130b68c-383f-4d2b-8f71-dac3fc30f72a",
        "evidence": "Amazon 'other, predominantly ads' revenue, TTM ($bn)",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:20.829815+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 66,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-90c4ff09a137",
        "evidence": "Amazon ad revenue >$25bn, possibly bigger cash than AWS",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 66,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-95a95d93c3cb",
        "evidence": "'Toll booths' metaphor for new ad revenue",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 66,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-9b45558f3662",
        "evidence": "Shopify $160bn GMV in last 12 months",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 67,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Data Story Arc",
          "slug": "data-story-arc",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Context → Conflict → Insight → Implication structure for data narratives",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "a4ce86ea-c0e3-43ab-a8d1-48ec0a8e80c6",
        "evidence": "Shopify powered over $160bn of e-commerce in the last 12 months",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:20.910929+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 67,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-9f81866673cc",
        "evidence": "'60% of Amazon is now Marketplace; Shopify is 45% as large'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 68,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-a5a6f45f4c35",
        "evidence": "Title 'New gatekeepers' coins the concept",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 69,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-aa1d923a8bb2",
        "evidence": "Callout 'Smaller brands have dramatically larger share online'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 70,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Chartjunk Elimination",
          "slug": "chartjunk-elimination",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
          "version": 1,
          "bodyDocId": null,
          "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "be3d2c92-b14f-4181-978a-bdea38f14dce",
        "evidence": "US CPG sales by brand size, 2020",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:21.069224+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 70,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-b0ddfa14cf4b",
        "evidence": "'On some estimates Shein is now the largest US fast-fashion retailer'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 74,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-b8aae572f269",
        "evidence": "Title 'This has all happened before' is the thesis",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 75,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "2x2 matrix",
          "slug": "matrix-2x2",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-50ab-72d1-8afb-3ab0a38e32a8",
          "version": 1,
          "bodyDocId": null,
          "description": "BCG matrix, importance/urgency, any axes-and-quadrants frame.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "e384a196-b48d-44f2-8c43-f9fe52d0600f",
        "evidence": "comparison_table",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:09.691767+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 78,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-d2ff9cc6a63b",
        "evidence": "$7-800bn US brand+retail customer-acquisition spend",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 79,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Market Segmentation Pyramid",
          "slug": "market-segmentation-pyramid",
          "status": "active",
          "bestFor": null,
          "canonId": "1c9f3543-c96f-4a5b-b4a4-9b2a412c0aaf",
          "version": 1,
          "bodyDocId": null,
          "description": null,
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "b8aa665a-b310-4718-99eb-091f7e5b0cc1",
        "evidence": "market_landscape",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:59:09.767715+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 79,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-ce3f3699174d",
        "evidence": "'Rent is the new CAC' is a coined metaphor",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 79,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-d71598857d70",
        "evidence": "Callout invokes Andreessen 'software eats the world'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 81,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-e1196fc8c04f",
        "evidence": "Title is the comparative claim itself",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 84,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-dfccd10840ba",
        "evidence": "Title quantifies: Apple platform rents > music industry, > Netflix",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 84,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-e73be2ab36d1",
        "evidence": "'Over $100bn in revenue from leveraging the platform'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 85,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-e96a0cd7f04c",
        "evidence": "'Total Apple revenue close to 20x recorded music'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 86,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-9339-f6f36169d088",
        "evidence": "Title 'Moving to bigger opportunities' captures the ladder",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 87,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-1b83-7130-9339-fefaf76678fc",
        "evidence": "Investment trend chart",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 88,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-9339-fb13a33496f5",
        "evidence": "Callout 'firehose of money' visualises capital flow",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 88,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-1b83-7130-933a-027dde23acf2",
        "evidence": "Annotation puts current investment in dot-com-bubble context",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 89,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chartjunk Elimination",
          "slug": "chartjunk-elimination",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
          "version": 1,
          "bodyDocId": null,
          "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "38dcf3ed-ec15-4829-b10b-4f2bd5e65cc3",
        "evidence": "The slide features a line chart with a clear and simple design, indicating an effort to eliminate chartjunk.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:12.273669+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 89,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Authority Bias",
          "slug": "authority-bias",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-c38d-70b9-a284-b2b479763356",
          "version": 1,
          "bodyDocId": null,
          "description": "Expert opinions are weighted more heavily - cite credible sources",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Architect",
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-933a-06dbf6571a22",
        "evidence": "Quote from VC about $100mm seed rounds borrows insider authority",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 90,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-933a-0a837d1691d0",
        "evidence": "Specific 'around $100mm post-money seed rounds' figure",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 90,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-933a-10a7dd71d776",
        "evidence": "Title states the provocation directly",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 91,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Comparison frame",
          "slug": "comparison-frame",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-484b-7399-a4fc-d14644b99f93",
          "version": 1,
          "bodyDocId": null,
          "description": "Two or more states/subjects placed side by side to expose a gap.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "b8085599-90b9-4dbc-9f50-413912706622",
        "evidence": "The slide compares Tesla's valuation to the entire global car industry, using a comparison table.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:12.388577+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 91,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-933a-0e0bc49c732d",
        "evidence": "Title quantifies: Tesla valuation > entire global car industry",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 91,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-1b83-7130-933a-14d354d49d4b",
        "evidence": "Callout 'tech used to sell accounting tools to big companies — now it's part of our life'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 92,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Analytical method",
          "slug": "analytical-method",
          "status": "active",
          "bestFor": null,
          "canonId": "b42c4911-7946-49b5-951c-5f3d23f4e2bd",
          "version": 1,
          "bodyDocId": null,
          "description": "Diagnostic / structuring methods (5-whys, fishbone, issue tree, hypothesis-driven).",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "3bce57fc-ffe7-48ee-8074-e00e0dea54fd",
        "evidence": "The slide uses an analytical approach to compare the earnings of GM, Ford, and Chrysler to the deployment of cars and car-commerce.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:59:12.500065+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 93,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Closing Techniques",
          "slug": "closing-techniques",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-af13-774b-a4fd-7db0a3a88d51",
          "version": 1,
          "bodyDocId": null,
          "description": "Strong endings: Callback, challenge, vision, clear CTA, memorable line",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-1b83-7130-933a-229882a37006",
        "evidence": "Penultimate slide closes with rhetorical question",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:34.53104+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 93,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Storytelling: the closing ask",
          "slug": "closing-ask",
          "status": "active",
          "bestFor": null,
          "canonId": "019df269-24e0-70ab-8dd9-983832c1c665",
          "version": 1,
          "bodyDocId": "019df269-24bc-7554-b88d-245127606b8d",
          "description": "The single most important slide in the deck — after the cover. The final",
          "familyLabel": "narrative-block",
          "categoryName": "Narrative & Transformation",
          "categorySlug": "narrative-transformation"
        },
        "agent": "storyteller",
        "layer": "slide",
        "agents": [
          "storyteller"
        ],
        "matchId": "666cc8e3-350e-4a14-b099-70c3e4503af8",
        "evidence": "The slide is a closing ask slide with a clear call to action, featuring a thank you note.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 21:59:12.573281+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 94,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      }
    ],
    "frameworks": [
      {
        "matchId": "247a1976-a98f-4a52-a2cd-31dc6cc17dcd",
        "evidence": "The slide explicitly categorizes trends into Past, Present, and Future time horizons.",
        "framework": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-05-02 17:37:51.574+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "frameworkName": "flatten-fight-future"
      },
      {
        "matchId": "a53e82e3-8278-4a65-ba17-2b2ec9fe017d",
        "evidence": "The slide explicitly compares two states (old vs new) for two different technology sectors.",
        "framework": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-05-02 17:37:52.342+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "frameworkName": "comparison-frame"
      },
      {
        "matchId": "74aa976e-b0f5-420c-82cc-9893f2482441",
        "evidence": "Uses the Voltaire quote as an analogy to debunk tech terminology.",
        "framework": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-05-02 17:37:51.681+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "frameworkName": "metaphor-analogy"
      },
      {
        "matchId": "5796f132-19c3-41cb-8b55-88f5126ae54d",
        "evidence": "Linear progression of web eras",
        "framework": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-05-02 17:37:52.337+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "frameworkName": "evolutionary-model"
      },
      {
        "matchId": "1db2ea19-89dd-4b96-8be0-537020f2280a",
        "evidence": "Linear progression from Open Source to Web3",
        "framework": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-05-02 17:37:52.699+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "frameworkName": "evolutionary-model"
      },
      {
        "matchId": "94834476-d8c6-481c-809e-542e83f1321c",
        "evidence": "The slide explicitly compares two states across three dimensions.",
        "framework": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-05-02 17:37:55.705+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 10,
        "frameworkName": "comparison-frame"
      },
      {
        "matchId": "c28ace4b-de86-4977-ac89-06ddfd9a411f",
        "evidence": "Geographic heatmap of network coverage",
        "framework": null,
        "confidence": 1,
        "extraction": {
          "at": "2026-05-02 17:37:56.269+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 15,
        "frameworkName": "map-spatial"
      },
      {
        "matchId": "b4cf1722-94bb-4af7-9af0-59f5ca2b8d54",
        "evidence": "The slide presents two opposing concepts (Market caps vs Ponzi schemes) to highlight a nuance in token valuation.",
        "framework": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-05-02 17:37:53.47+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 17,
        "frameworkName": "contrast-pairs"
      },
      {
        "matchId": "1a9732fe-c3bf-479f-aeb2-5d162c6d47aa",
        "evidence": "The slide uses the structure 'X is Y, and yet it is not Y' to frame the problem.",
        "framework": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-05-02 17:37:54.03+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "frameworkName": "antithesis"
      },
      {
        "matchId": "e380a666-d8df-4d4b-892c-9d3a49ec8c7b",
        "evidence": "The slide explicitly compares two historical periods using parallel lists of concepts.",
        "framework": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-05-02 17:37:53.803+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 22,
        "frameworkName": "comparison-frame"
      },
      {
        "matchId": "024bf511-5bb1-42c3-b3f0-191072a3474f",
        "evidence": "The slide uses a linear flow to connect the shift in gaming to ecosystem development and finally to platform value.",
        "framework": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-05-02 17:37:53.952+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 25,
        "frameworkName": "causal-chain"
      },
      {
        "matchId": "a500b56f-5902-40fc-9163-09038829b8b3",
        "evidence": "Compares mobile phone evolution to game console evolution to predict VR/AR adoption.",
        "framework": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-05-02 17:37:58.478+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 28,
        "frameworkName": "argument-from-analogy"
      },
      {
        "matchId": "5d055ecd-0931-465f-9656-47674fbcfe8e",
        "evidence": "Linear progression of technology eras",
        "framework": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-05-02 17:37:55.822+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 37,
        "frameworkName": "timeline"
      },
      {
        "matchId": "9bfec0f9-8eeb-4e60-8128-5a86daa11e86",
        "evidence": "The slide explicitly contrasts the 'Traditional approach' with the 'Digital' approach to show improvement.",
        "framework": null,
        "confidence": 1,
        "extraction": {
          "at": "2026-05-02 17:37:58.888+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 47,
        "frameworkName": "before-after-framing"
      },
      {
        "matchId": "f6da3253-274b-452f-a3de-81c751a32d5c",
        "evidence": "The slide explicitly mentions 'value chains' and describes their unbundling process.",
        "framework": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-05-02 17:37:58.018+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 53,
        "frameworkName": "value-chain"
      },
      {
        "matchId": "019dd95a-1d21-7467-a468-83e3429989d4",
        "evidence": "Diagram explicitly cites 'value chains break apart' and traces gatekeepers→entrants→winners",
        "framework": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-04-29 13:07:34.940444+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 53,
        "frameworkName": "Value Chain Disruption"
      },
      {
        "matchId": "527f9ac4-c6da-4537-8860-7e1ac89b69f6",
        "evidence": "Progression of market values from billions to trillions",
        "framework": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-05-02 17:38:02.606+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 87,
        "frameworkName": "market-sizing"
      },
      {
        "matchId": "019dd95a-1d21-7467-a468-873e54f24a23",
        "evidence": "Ascending TAM stages from $90bn (books) to $50tr (consumer spending)",
        "framework": null,
        "confidence": 60,
        "extraction": {
          "at": "2026-04-29 13:07:34.940444+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 87,
        "frameworkName": "TAM Expansion Ladder"
      },
      {
        "matchId": "7aea6820-68cd-403b-a37c-406e86b02979",
        "evidence": "Citing Fred Wilson's blog post to support the argument about seed round valuations.",
        "framework": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-05-02 17:38:05.373+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 90,
        "frameworkName": "authority-citation"
      },
      {
        "matchId": "db3002aa-c99c-4654-ad2c-4729620427ec",
        "evidence": "The slide depicts the progression of technology through different user segments over time.",
        "framework": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-05-02 17:38:03.714+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 92,
        "frameworkName": "Technology Adoption Lifecycle"
      }
    ],
    "patterns": []
  },
  "storymakers": {
    "model": "claude-cli-sonnet-4.6",
    "backend": null,
    "rawJson": {
      "arc": {
        "id": 12,
        "slug": "onion",
        "beats": [
          {
            "name": "Surface Observation",
            "end_page": 34,
            "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
            "position": 1,
            "start_page": 1
          },
          {
            "name": "First Layer",
            "end_page": 48,
            "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
            "position": 2,
            "start_page": 35
          },
          {
            "name": "Deeper Layer",
            "end_page": 79,
            "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
            "position": 3,
            "start_page": 49
          },
          {
            "name": "Core Insight",
            "end_page": 87,
            "evidence": "Conclusion: platform leverage + tech expanding TAM from $90bn books to $50tr consumer",
            "position": 4,
            "start_page": 80
          },
          {
            "name": "Implications",
            "end_page": 94,
            "evidence": "Investment firehose, Tesla > car industry valuation, second 50 years of tech",
            "position": 5,
            "start_page": 88
          }
        ],
        "evidence": "Deck peels back layers: surface hype (Web3/metaverse pp 4-19), first layer (present cloud deployment pp 36-48), deeper layer (past disruption patterns pp 50-79), core insight (tech replaces whole industries pp 83-87), implications (investment landscape pp 88-93).",
        "confidence": 70
      },
      "loops": [
        {
          "id": 2,
          "slug": "02-pattern-hunter",
          "end_page": 19,
          "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
          "position": 1,
          "objective": "Frame Web3 as real-but-ambiguous via converging data points",
          "confidence": 75,
          "start_page": 7
        },
        {
          "id": 2,
          "slug": "02-pattern-hunter",
          "end_page": 28,
          "evidence": "Mood boards → VR sales → Roblox vs games TAM → 'doesn't guarantee universal appeal' p28",
          "position": 2,
          "objective": "Stress-test the metaverse thesis against actual traction",
          "confidence": 75,
          "start_page": 20
        },
        {
          "id": 9,
          "slug": "09-precedent",
          "end_page": 34,
          "evidence": "Mobile-data-decade lag (p31), AI/VR winters (p32), 1995 web confusion (p33) all cited as parallels",
          "position": 3,
          "objective": "Use mobile/AI/web history to calibrate expectations on tech timing",
          "confidence": 80,
          "start_page": 29
        },
        {
          "id": 3,
          "slug": "03-aha-moment",
          "end_page": 48,
          "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
          "position": 4,
          "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
          "confidence": 75,
          "start_page": 36
        },
        {
          "id": 13,
          "slug": "13-domino-effect",
          "end_page": 58,
          "evidence": "Trigger 'atoms stop mattering' (p51) → unbundling diagram (p53) → TV penetration drop → new entrants outspending incumbents",
          "position": 5,
          "objective": "Show the same internet trigger toppling music, newspapers, then TV",
          "confidence": 75,
          "start_page": 50
        },
        {
          "id": 2,
          "slug": "02-pattern-hunter",
          "end_page": 79,
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "start_page": 59
        },
        {
          "id": 28,
          "slug": "28-ladder-abstraction",
          "end_page": 93,
          "evidence": "Concrete Apple > music+Netflix → platform leverage → $50tr TAM ladder (p87) → Tesla valuation = entire car industry",
          "position": 7,
          "objective": "Climb from concrete music numbers to the universal principle that tech now competes with whole industries",
          "confidence": 75,
          "start_page": 83
        }
      ],
      "slide_tools": [
        {
          "tools": [
            {
              "id": 16,
              "slug": "three-pillars",
              "layer": "Block",
              "evidence": "Three labelled circles — Future / Present / Past — as roadmap",
              "confidence": 90
            },
            {
              "id": 34,
              "slug": "the-rule-of-three",
              "layer": "Block",
              "evidence": "Explicit three-part structure announced for the deck",
              "confidence": 90
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Subtitle 'visions versus deployment and disruption' states the thesis",
              "confidence": 70
            }
          ],
          "page_number": 2
        },
        {
          "tools": [
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "Callout 'Redefine the vision and set a broader goal, for both VR and crypto' frames as rebranding",
              "confidence": 65
            }
          ],
          "page_number": 5
        },
        {
          "tools": [
            {
              "id": 123,
              "slug": "opening-hooks",
              "layer": "Slide",
              "evidence": "Voltaire quote opens Web3 section as provocative hook",
              "confidence": 85
            },
            {
              "id": 169,
              "slug": "authority-bias",
              "layer": "Slide",
              "evidence": "Quote attributed to Voltaire borrows historical authority",
              "confidence": 80
            },
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "Holy-Roman-Empire analogy applied to crypto/blockchain naming",
              "confidence": 75
            }
          ],
          "page_number": 7
        },
        {
          "tools": [
            {
              "id": 85,
              "slug": "argument-from-analogy",
              "layer": "Loop",
              "evidence": "Title 'Web3 = Open Source 2' explicitly draws parallel to open source",
              "confidence": 75
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title states the thesis equation",
              "confidence": 80
            }
          ],
          "page_number": 9
        },
        {
          "tools": [
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Market cap chart visualises crypto growth",
              "confidence": 70
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Callout annotates 'billions of dollars of real money invested'",
              "confidence": 70
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Self-aware title 'Obligatory market cap chart'",
              "confidence": 70
            }
          ],
          "page_number": 11
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title names the use case being evaluated",
              "confidence": 80
            },
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "$tr-scale figures grounding the abstract concept",
              "confidence": 75
            }
          ],
          "page_number": 12
        },
        {
          "tools": [
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "KPI dashboard for software-use traction (10m+ scale)",
              "confidence": 70
            }
          ],
          "page_number": 13
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'NFTs, today's white-hot idea' frames the topic",
              "confidence": 75
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Callout positions NFTs as both experiment and building block",
              "confidence": 70
            }
          ],
          "page_number": 14
        },
        {
          "tools": [
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Adoption curve chart",
              "confidence": 70
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'A nice adoption curve' is the editorial verdict",
              "confidence": 70
            }
          ],
          "page_number": 16
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout 'A token price is neither, and both' is the slide insight",
              "confidence": 80
            }
          ],
          "page_number": 17
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'Early (still!), exciting, unclear' synthesises the loop",
              "confidence": 90
            },
            {
              "id": 92,
              "slug": "tricolon",
              "layer": "Loop",
              "evidence": "Three-word verdict in title — early / exciting / unclear",
              "confidence": 80
            }
          ],
          "page_number": 18
        },
        {
          "tools": [
            {
              "id": 67,
              "slug": "curiosity-gap",
              "layer": "Block",
              "evidence": "Title 'Is an iPhone open or closed? Yes' poses paradox",
              "confidence": 80
            },
            {
              "id": 165,
              "slug": "picture-superiority-effect",
              "layer": "Slide",
              "evidence": "Large iPhone photo carries the argument visually",
              "confidence": 75
            }
          ],
          "page_number": 19
        },
        {
          "tools": [
            {
              "id": 78,
              "slug": "contrast-pairs",
              "layer": "Loop",
              "evidence": "Two columns: 1994 'Information Superhighway' vs 2021 'Metaverse'",
              "confidence": 90
            },
            {
              "id": 85,
              "slug": "argument-from-analogy",
              "layer": "Loop",
              "evidence": "Direct historical-parallel framing — 1994 mood board for today's metaverse",
              "confidence": 85
            }
          ],
          "page_number": 22
        },
        {
          "tools": [
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "VR traction chart",
              "confidence": 70
            },
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "Quest 2 sold 10m units in 12 months",
              "confidence": 75
            }
          ],
          "page_number": 23
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title hypothesises 'Roblox as a model for the future?'",
              "confidence": 75
            }
          ],
          "page_number": 25
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "'250-350m core gamers — same size as Snap, fraction of 1bn iPhone users'",
              "confidence": 80
            }
          ],
          "page_number": 26
        },
        {
          "tools": [
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Market sizing chart $170bn games TAM",
              "confidence": 70
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'mobile has changed the games TAM' states the so-what",
              "confidence": 70
            }
          ],
          "page_number": 27
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout 'doesn't guarantee universal appeal' is the verdict",
              "confidence": 75
            }
          ],
          "page_number": 28
        },
        {
          "tools": [
            {
              "id": 123,
              "slug": "opening-hooks",
              "layer": "Slide",
              "evidence": "Quote opens 2030 section: 'This is amazing - it must be part of the future'",
              "confidence": 80
            },
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "Callout coins 'Tech determinism' as the named fallacy",
              "confidence": 70
            }
          ],
          "page_number": 30
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "Mobile-data-took-a-decade-after-Japan as concrete precedent",
              "confidence": 80
            },
            {
              "id": 85,
              "slug": "argument-from-analogy",
              "layer": "Loop",
              "evidence": "Mobile data history applied to current tech-vision timing",
              "confidence": 75
            }
          ],
          "page_number": 31
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "Names AI Winter and VR Winter as historical episodes",
              "confidence": 75
            },
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "'Winter' metaphor for tech downturn cycles",
              "confidence": 75
            }
          ],
          "page_number": 32
        },
        {
          "tools": [
            {
              "id": 169,
              "slug": "authority-bias",
              "layer": "Slide",
              "evidence": "Lists 1990s confusion (FTP, Gopher, WAIS) to show experts didn't know",
              "confidence": 70
            }
          ],
          "page_number": 33
        },
        {
          "tools": [
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "Callout: 'sounds like a parody of marketing gibberish'",
              "confidence": 70
            }
          ],
          "page_number": 37
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "'Only 10-15% of enterprise IT' is concrete diagnostic",
              "confidence": 85
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'cloud is still just beginning' is the verdict",
              "confidence": 80
            }
          ],
          "page_number": 38
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "'Old paradigms have a long half-life' states pattern",
              "confidence": 75
            },
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "'Half-life' radioactive metaphor for legacy tech",
              "confidence": 75
            }
          ],
          "page_number": 39
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "'Alphabet + Microsoft spending over $40bn this year on cloud'",
              "confidence": 80
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title coins 'hyperscalers' label",
              "confidence": 70
            }
          ],
          "page_number": 40
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout 'step change in the opportunity' is the so-what",
              "confidence": 70
            }
          ],
          "page_number": 41
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout 'structural change in the amount of software companies can use'",
              "confidence": 75
            }
          ],
          "page_number": 43
        },
        {
          "tools": [
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "'Don't put your spreadsheet on the web — find a better way'",
              "confidence": 80
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'cloud means workflows, not better file shares'",
              "confidence": 75
            }
          ],
          "page_number": 44
        },
        {
          "tools": [
            {
              "id": 70,
              "slug": "storytelling-effect",
              "layer": "Block",
              "evidence": "Frame.io named as concrete client example replacing email/Slack/sheets",
              "confidence": 75
            }
          ],
          "page_number": 45
        },
        {
          "tools": [
            {
              "id": 98,
              "slug": "callback",
              "layer": "Loop",
              "evidence": "'Welcome to 2005' callback foreshadows the 'Welcome to 2007' on p59",
              "confidence": 70
            },
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "'15-year-old concept (Google Docs for video)'",
              "confidence": 75
            }
          ],
          "page_number": 46
        },
        {
          "tools": [
            {
              "id": 26,
              "slug": "before-after-bridge",
              "layer": "Block",
              "evidence": "Callout: 'Before >1,000 FTEs / Now: 400 / Target: <100'",
              "confidence": 90
            },
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "Specific FTE counts at three time points",
              "confidence": 85
            }
          ],
          "page_number": 47
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'Mass deployment' synthesises the present-section loop",
              "confidence": 80
            }
          ],
          "page_number": 48
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Section header itself is the thesis: 'Everything the internet did to music or newspapers is now happening to everyone else'",
              "confidence": 90
            }
          ],
          "page_number": 50
        },
        {
          "tools": [
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "'When do the atoms stop mattering?' physical-vs-digital metaphor",
              "confidence": 80
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout 'one industry after another is disrupted' is the so-what",
              "confidence": 75
            }
          ],
          "page_number": 51
        },
        {
          "tools": [
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "Title uses 'boiled frog' and 'gradually then suddenly' metaphors",
              "confidence": 90
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title is the editorial insight",
              "confidence": 80
            }
          ],
          "page_number": 52
        },
        {
          "tools": [
            {
              "id": 86,
              "slug": "causal-chain",
              "layer": "Loop",
              "evidence": "Three-circle arrow diagram: value chains break → new entrants → new winners",
              "confidence": 90
            },
            {
              "id": 34,
              "slug": "the-rule-of-three",
              "layer": "Block",
              "evidence": "Three-stage diagram of the unbundling pattern",
              "confidence": 80
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title coins 'The great unbundling' as named concept",
              "confidence": 75
            }
          ],
          "page_number": 53
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "'US pay TV penetration is down a third from the peak'",
              "confidence": 80
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Chart annotation reinforces the headline number",
              "confidence": 65
            }
          ],
          "page_number": 54
        },
        {
          "tools": [
            {
              "id": 123,
              "slug": "opening-hooks",
              "layer": "Slide",
              "evidence": "'Albanian army' quote opens new-entrants beat",
              "confidence": 80
            },
            {
              "id": 169,
              "slug": "authority-bias",
              "layer": "Slide",
              "evidence": "Quote leverages an executive's dismissal as ironic authority",
              "confidence": 70
            }
          ],
          "page_number": 55
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "$32bn callout — new entrants outspending content incumbents",
              "confidence": 80
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Competitive comparison chart",
              "confidence": 65
            }
          ],
          "page_number": 56
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "'UK 16-34s, US streaming bigger than entire UK TV industry'",
              "confidence": 85
            }
          ],
          "page_number": 57
        },
        {
          "tools": [
            {
              "id": 98,
              "slug": "callback",
              "layer": "Loop",
              "evidence": "'Welcome to 2007' echoes 'Welcome to 2005' callback structure",
              "confidence": 80
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout 'deploying old ideas finally ready to work'",
              "confidence": 70
            }
          ],
          "page_number": 59
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "'80% Britain online vs less than a third of Italians'",
              "confidence": 80
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'future is unevenly distributed' references Gibson",
              "confidence": 70
            }
          ],
          "page_number": 61
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "'40% of UK retail spending now online'",
              "confidence": 80
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'Retail unbundles' echoes the unbundling thesis",
              "confidence": 75
            }
          ],
          "page_number": 62
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "'Amazon $74bn shipping; larger than UPS or Fedex by 2022'",
              "confidence": 85
            }
          ],
          "page_number": 64
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title states 'e-commerce leader on track to overtake car-commerce leader'",
              "confidence": 75
            }
          ],
          "page_number": 65
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "Amazon ad revenue >$25bn, possibly bigger cash than AWS",
              "confidence": 80
            },
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "'Toll booths' metaphor for new ad revenue",
              "confidence": 70
            }
          ],
          "page_number": 66
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "Shopify $160bn GMV in last 12 months",
              "confidence": 80
            }
          ],
          "page_number": 67
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "'60% of Amazon is now Marketplace; Shopify is 45% as large'",
              "confidence": 80
            }
          ],
          "page_number": 68
        },
        {
          "tools": [
            {
              "id": 92,
              "slug": "tricolon",
              "layer": "Loop",
              "evidence": "Three parallel clauses: 'we personalise / you track / they violate'",
              "confidence": 85
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'New gatekeepers' coins the concept",
              "confidence": 70
            }
          ],
          "page_number": 69
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout 'Smaller brands have dramatically larger share online'",
              "confidence": 75
            }
          ],
          "page_number": 70
        },
        {
          "tools": [
            {
              "id": 70,
              "slug": "storytelling-effect",
              "layer": "Block",
              "evidence": "Shein narrative: new UX + new data models + acquisition budget",
              "confidence": 70
            }
          ],
          "page_number": 72
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "'On some estimates Shein is now the largest US fast-fashion retailer'",
              "confidence": 80
            }
          ],
          "page_number": 74
        },
        {
          "tools": [
            {
              "id": 85,
              "slug": "argument-from-analogy",
              "layer": "Loop",
              "evidence": "'Department stores were Amazon, once' historical parallel",
              "confidence": 85
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'This has all happened before' is the thesis",
              "confidence": 75
            }
          ],
          "page_number": 75
        },
        {
          "tools": [
            {
              "id": 67,
              "slug": "curiosity-gap",
              "layer": "Block",
              "evidence": "Title is a binary question: 'good tech? Or good retailing?'",
              "confidence": 80
            }
          ],
          "page_number": 76
        },
        {
          "tools": [
            {
              "id": 67,
              "slug": "curiosity-gap",
              "layer": "Block",
              "evidence": "Question forces choice: '1995 or 1900?'",
              "confidence": 80
            },
            {
              "id": 85,
              "slug": "argument-from-analogy",
              "layer": "Loop",
              "evidence": "Drags in two precedent eras for comparison",
              "confidence": 75
            }
          ],
          "page_number": 77
        },
        {
          "tools": [
            {
              "id": 67,
              "slug": "curiosity-gap",
              "layer": "Block",
              "evidence": "Callout 'Is a good digital experience a digital problem, or a company problem?'",
              "confidence": 75
            }
          ],
          "page_number": 78
        },
        {
          "tools": [
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "'Rent is the new CAC' is a coined metaphor",
              "confidence": 90
            },
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "$7-800bn US brand+retail customer-acquisition spend",
              "confidence": 80
            }
          ],
          "page_number": 79
        },
        {
          "tools": [
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "Callout invokes Andreessen 'software eats the world'",
              "confidence": 80
            }
          ],
          "page_number": 81
        },
        {
          "tools": [
            {
              "id": 98,
              "slug": "callback",
              "layer": "Loop",
              "evidence": "Title 'Past, future, present' callback to opening three-pillar roadmap",
              "confidence": 85
            }
          ],
          "page_number": 82
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "Title quantifies: Apple platform rents > music industry, > Netflix",
              "confidence": 85
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title is the comparative claim itself",
              "confidence": 80
            }
          ],
          "page_number": 84
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "'Over $100bn in revenue from leveraging the platform'",
              "confidence": 85
            }
          ],
          "page_number": 85
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "'Total Apple revenue close to 20x recorded music'",
              "confidence": 80
            }
          ],
          "page_number": 86
        },
        {
          "tools": [
            {
              "id": 93,
              "slug": "build-up-gradatio",
              "layer": "Loop",
              "evidence": "Four-step ladder of escalating $: $90bn books → $1tr ads → $20tr retail → $50tr consumer",
              "confidence": 90
            },
            {
              "id": 86,
              "slug": "causal-chain",
              "layer": "Loop",
              "evidence": "Arrow chain showing tech moving up TAM ladder",
              "confidence": 75
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'Moving to bigger opportunities' captures the ladder",
              "confidence": 75
            }
          ],
          "page_number": 87
        },
        {
          "tools": [
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "Callout 'firehose of money' visualises capital flow",
              "confidence": 75
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Investment trend chart",
              "confidence": 65
            }
          ],
          "page_number": 88
        },
        {
          "tools": [
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Annotation puts current investment in dot-com-bubble context",
              "confidence": 65
            }
          ],
          "page_number": 89
        },
        {
          "tools": [
            {
              "id": 169,
              "slug": "authority-bias",
              "layer": "Slide",
              "evidence": "Quote from VC about $100mm seed rounds borrows insider authority",
              "confidence": 80
            },
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "Specific 'around $100mm post-money seed rounds' figure",
              "confidence": 75
            }
          ],
          "page_number": 90
        },
        {
          "tools": [
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "Title quantifies: Tesla valuation > entire global car industry",
              "confidence": 90
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title states the provocation directly",
              "confidence": 85
            }
          ],
          "page_number": 91
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout 'tech used to sell accounting tools to big companies — now it's part of our life'",
              "confidence": 75
            }
          ],
          "page_number": 92
        },
        {
          "tools": [
            {
              "id": 67,
              "slug": "curiosity-gap",
              "layer": "Block",
              "evidence": "Closing question: 'Detroit, or retailers?' forces audience inference",
              "confidence": 80
            },
            {
              "id": 85,
              "slug": "argument-from-analogy",
              "layer": "Loop",
              "evidence": "Auto-industry precedent applied to tech-vs-deployers question",
              "confidence": 80
            },
            {
              "id": 124,
              "slug": "closing-techniques",
              "layer": "Slide",
              "evidence": "Penultimate slide closes with rhetorical question",
              "confidence": 70
            }
          ],
          "page_number": 93
        }
      ],
      "slides_seen": 94,
      "deck_summary": "Benedict Evans's 'Three Steps to the Future' is thought leadership, not consulting — but it leans hard on Storymakers staples (action titles, three-pillar roadmap, contrast pairs, metaphor, concrete numbers, callbacks) while skipping client-deck staples like SCQA, MECE issue trees, or formal recommendations.",
      "secondary_arcs": [
        {
          "id": 11,
          "slug": "triple-take",
          "beats": [
            {
              "name": "The Facts (What)",
              "end_page": 34,
              "evidence": "Future section catalogs Web3 + metaverse claims and data",
              "position": 1,
              "start_page": 3
            },
            {
              "name": "The Implications (So What)",
              "end_page": 48,
              "evidence": "Present section spells out what cloud/SaaS deployment means",
              "position": 2,
              "start_page": 35
            },
            {
              "name": "The Action (Now What)",
              "end_page": 94,
              "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
              "position": 3,
              "start_page": 49
            }
          ],
          "evidence": "Page 2 roadmap explicitly names three buckets — Future (facts about visions), Present (so-what deployment), Past (now-what disruption playbook).",
          "confidence": 60
        }
      ],
      "images_inspected": 4,
      "slide_frameworks": [
        {
          "frameworks": [
            {
              "name": "Value Chain Disruption",
              "slug": "value-chain-disruption",
              "evidence": "Diagram explicitly cites 'value chains break apart' and traces gatekeepers→entrants→winners",
              "confidence": 65
            }
          ],
          "page_number": 53
        },
        {
          "frameworks": [
            {
              "name": "TAM Expansion Ladder",
              "slug": "tam-expansion-ladder",
              "evidence": "Ascending TAM stages from $90bn (books) to $50tr (consumer spending)",
              "confidence": 60
            }
          ],
          "page_number": 87
        }
      ]
    },
    "matchedAt": "2026-04-27 09:25:01+00",
    "slidesSeen": 94,
    "deckSummary": "Benedict Evans's 'Three Steps to the Future' is thought leadership, not consulting — but it leans hard on Storymakers staples (action titles, three-pillar roadmap, contrast pairs, metaphor, concrete numbers, callbacks) while skipping client-deck staples like SCQA, MECE issue trees, or formal recommendations.",
    "imagesInspected": 4,
    "extractionSeconds": 508.5138
  },
  "score": {
    "backend": "codex",
    "scoredAt": "2026-05-02 12:35:49.548+00",
    "subScores": {
      "scqa_arc": 63,
      "action_titles": 62,
      "mece_structure": 64,
      "closing_strength": 28,
      "evidence_quality": 82,
      "clarity_of_thesis": 60,
      "production_quality": 76,
      "visual_storytelling": 80
    },
    "totalScore": 64,
    "coveragePct": 100,
    "explanations": {
      "scqa_arc": "The deck has situation and complication beats around hype, deployment, and historical disruption, but the answer is dispersed across analyses rather than resolved in a crisp SCQA arc.",
      "action_titles": "Action-title density is moderate, with many labels or questions remaining; a strong example is slide 52, \"If pay TV fell 'gradually, then suddenly', retail has been a boiled frog.\"",
      "mece_structure": "The Future, Present, and Past frame is understandable, but topic sections overlap and the post-Conclusion sequence on slides 81-93 weakens MECE closure.",
      "closing_strength": "The close is weak because slide 80 only signals Conclusion and slide 94 is a Thank You page, with no clear recommendation, call to action, or next-step agenda.",
      "evidence_quality": "Most substantive claims are supported by charts, metrics, precedents, or case examples, such as slides 23-27 on VR/games, slides 60-68 on retail, and slides 84-91 on platform rents and valuation.",
      "clarity_of_thesis": "The first five slides establish a temporal frame and the Web3/metaverse rebranding idea, especially slides 2 and 5, but they do not state a single declarative central thesis.",
      "production_quality": "Production is polished and visually consistent, but inconsistent action-title discipline and several dense or overcrowded slides, including slides 31, 32, 79, and 89, hold it below top-tier.",
      "visual_storytelling": "The deck generally matches message to tool well, using charts, process diagrams, screenshots, quotes, and big-number comparisons across slides 11-18, 38-44, and 60-79."
    },
    "slidesAnalyzed": 94
  },
  "review": {
    "backend": null,
    "verdict": "This is a thoughtful independent analyst essay deck with a strong temporal spine, but only a mid-tier Storymakers exemplar because it favors provocation and exploration over answer-led SCQA resolution.",
    "reviewedAt": "2026-05-01 22:36:16.181+00",
    "slidesSeen": 94,
    "suggestions": [
      "Add an answer-led thesis slide after slide 2 that states the point of the three steps: future visions are uncertain, present deployment is still early, and past internet patterns are now spreading through every industry.",
      "Rewrite section dividers as claims, not labels, for example: Future = exciting but unresolved, Present = cloud/SaaS deployment is still early, Past = internet unbundling is now hitting atoms.",
      "Convert high-value question/topic titles into takeaways, such as slide 13 to \"Software use cases still lag financial speculation\" and slide 76 to \"Retail disruption is as much execution as technology\".",
      "Move slide 81 into a true appendix and replace the final coda with a clear implications or next-steps slide before the thank-you."
    ],
    "closingScore": 52,
    "openingScore": 60,
    "topStrengths": [
      "The macro-structure is easy to track: slide 2 previews the Future/Present/Past frame, then slides 3, 35, and 49 mark the major acts.",
      "The Future section creates useful tension by contrasting hype with adoption reality, especially slides 22-28 on metaverse/VR and slides 31-34 on slow adoption, winters, and uncertainty.",
      "The Past section uses analogies well, with slides 50-53 framing internet unbundling and slides 75-79 connecting retail history to current digital disruption."
    ],
    "topWeaknesses": [
      "The opening frames the topic but does not state the thesis in the first 3 slides, so the reader has to infer the answer from later evidence.",
      "The closing lacks a recommendation or implications slide; slides 90-93 are thoughtful but slide 94 ends as contact/thanks rather than resolution.",
      "Many titles are rhetorical or topical rather than declarative, which weakens skim-read comprehension across a 94-slide deck."
    ],
    "narrativeScore": 70,
    "pillarCritique": "Future/Present/Past is a clean temporal MECE scaffold, with slide 2 and dividers 3, 35, and 49 doing real structural work. However, Web3/Metaverse/2030 are topical subchapters, and the post-Conclusion sequence around slides 81-82 blurs pillar discipline.",
    "closingCritique": "The end has strong coda material in slides 91-93, but no explicit call to action or next steps; slide 94 is a conventional thank-you. Because slide 80's conclusion is followed by slide 81 and a reopened argument, the close is memorable intellectually but not decisively resolved.",
    "openingCritique": "The first 5 slides establish the temporal frame and hook with Web3/metaverse rebranding, especially slide 5. They do not lead with the answer or stakes; the actual POV emerges gradually through the Web3 and metaverse evidence.",
    "extractionSeconds": 96.051,
    "narrativeCritique": "The deck has a recognizable setup -> tension -> analysis arc: slides 1-5 set the three-step frame, slides 6-34 test future hype, slides 35-79 analyze present deployment and past disruption, and slides 82-93 add a coda. The missing act is resolution: slide 80 announces a conclusion, but the deck reopens into appendix/coda and never lands an explicit recommendation.",
    "titleQualityScore": 64,
    "titleQualityCritique": "Titles are mixed: some are insight-bearing, such as slide 24 \"So far, Roblox is a far bigger story\" and slide 79 \"US brands & retailers spend $7-800bn to reach their customers\", but many remain labels/questions like slide 36 \"Deployment\", slide 13 \"Traction for software use cases?\", and slide 80 \"Conclusion\"."
  },
  "activistThesis": null,
  "pitchdeck": {
    "metadata": null,
    "profile": null
  },
  "slides": [
    {
      "page": 1,
      "type": "setup",
      "function": "front_matter",
      "imagePath": "https://imgproxy.kitesheet.com/QKCOy3FeYkSFG_gAnPYAfWgm_yIWNo62nQNTy0zZa9Y/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9iMWFjNTc5NGQ2OGIzZTA5L3AwMDEuanBn",
      "rawType": "cover",
      "block": null,
      "metadata": {
        "slideType": "cover",
        "slideTypeCanon": {
          "name": "Cover",
          "slug": "cover",
          "status": "active",
          "canonId": "019de52d-05f2-729d-9f93-e0504f0a2410",
          "version": 1,
          "description": null
        },
        "function": "front_matter",
        "functionCanon": {
          "name": "Front matter",
          "slug": "front_matter",
          "status": "active",
          "canonId": "019de52d-133d-73f0-9e26-201eda96b098",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 4,
        "componentCount": 2,
        "textChars": 70,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:51.093+00",
          "seconds": 2.271,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/1",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-1",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.078,
            "w": 0.145,
            "x": 0.202,
            "y": 0.658
          },
          "kind": "paragraph",
          "text": "Benedict Evans\nJanuary 2022\nwww.ben-evans.com",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:51.093+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a721e52b-df6d-4e34-a825-431c68bd62e5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.054,
            "w": 0.548,
            "x": 0.202,
            "y": 0.278
          },
          "kind": "title",
          "text": "Three Steps to the Future",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:51.093+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "53740beb-5442-4fc6-99c2-81e2ad660edb",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        }
      ],
      "loops": [],
      "thumbSrc": "https://imgproxy.kitesheet.com/PZxW3m-BmupeUe5NoNKrWitlpku5sCdp5bxsmA9kWNw/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9iMWFjNTc5NGQ2OGIzZTA5L3AwMDEuanBn",
      "imagePathAlt": "https://imgproxy.kitesheet.com/NEzljx8UoW-HbNSnJZ1zJ3ZNkYzKWzBJ5L2F4EU1B6M/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9iMWFjNTc5NGQ2OGIzZTA5L3AwMDEucG5n",
      "thumbSrcAlt": "https://imgproxy.kitesheet.com/EBmmnXV0L2MUZ-42uMooqDgvOBc6CRPjoFmc4iJGuYc/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9iMWFjNTc5NGQ2OGIzZTA5L3AwMDEucG5n"
    },
    {
      "page": 2,
      "type": "setup",
      "title": "The slide uses a simple temporal progression framework.",
      "function": "present_framework",
      "rawType": "key_messages",
      "block": null,
      "metadata": {
        "slideType": "key_messages",
        "slideTypeCanon": {
          "name": "Key messages",
          "slug": "key_messages",
          "status": "active",
          "canonId": "019de52d-0712-703f-89f5-bda6688faf3f",
          "version": 1,
          "description": null
        },
        "function": "present_framework",
        "functionCanon": {
          "name": "Present framework",
          "slug": "present_framework",
          "status": "active",
          "canonId": "019de52d-1403-7667-9100-d2ac6709f750",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 23,
        "componentCount": 5,
        "textChars": 215,
        "nDataPoints": 0,
        "notes": "The slide uses a simple temporal progression framework.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "other"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:51.574+00",
          "seconds": 2.693,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/2",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-2",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.3,
            "w": 0.2,
            "x": 0.2,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Future: Tech visions for 2030",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": {
              "name": "Process flow",
              "slug": "process",
              "status": "active",
              "canonId": "019de52d-039c-718f-ad3a-efe9c4b3c838",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "process",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:51.574+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "39b92cc8-44c9-4969-9f16-589a473fddc7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.2,
            "x": 0.7,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Past: Old economy disrupted by ideas from the 2000s",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": {
              "name": "Process flow",
              "slug": "process",
              "status": "active",
              "canonId": "019de52d-039c-718f-ad3a-efe9c4b3c838",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "process",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:51.574+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "69e03c9b-87e8-41d1-a78e-4829ef3e9db1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.2,
            "x": 0.45,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Present: Startups deploy the ideas of the 2010s",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": {
              "name": "Process flow",
              "slug": "process",
              "status": "active",
              "canonId": "019de52d-039c-718f-ad3a-efe9c4b3c838",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "process",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:51.574+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f5069af5-3c75-4082-9c13-a3dca671580f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.4,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "Three trends in 2021 - visions versus deployment and disruption",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:51.574+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4a434dd1-956c-4420-b92b-219b993563ef",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Three steps to the future",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:51.574+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "621274e7-0b4e-4299-b3aa-03b154622ca0",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "The Rule of Three",
            "slug": "the-rule-of-three",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-8962-75cf-b4f8-9394501a6f33",
            "version": 1,
            "bodyDocId": null,
            "description": "Ideas presented in threes are more memorable and satisfying",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-57a95771e2a4",
          "evidence": "Explicit three-part structure announced for the deck",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Three Pillars",
            "slug": "three-pillars",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-81ef-7455-a365-b234d95a6bbb",
            "version": 1,
            "bodyDocId": null,
            "description": "Three major supporting arguments that are MECE and address key concerns",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Architect",
          "layer": "block",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-5373d512da7a",
          "evidence": "Three labelled circles — Future / Present / Past — as roadmap",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-5a1fab676738",
          "evidence": "Subtitle 'visions versus deployment and disruption' states the thesis",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        }
      ],
      "frameworks": [
        {
          "matchId": "247a1976-a98f-4a52-a2cd-31dc6cc17dcd",
          "evidence": "The slide explicitly categorizes trends into Past, Present, and Future time horizons.",
          "framework": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-05-02 17:37:51.574+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "frameworkName": "flatten-fight-future"
        }
      ],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 3,
      "type": "setup",
      "function": "transition",
      "rawType": "section_divider",
      "block": null,
      "metadata": {
        "slideType": "section_divider",
        "slideTypeCanon": {
          "name": "Section divider",
          "slug": "section_divider",
          "status": "active",
          "canonId": "019de52d-066a-7402-9554-6ae504999041",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 0,
        "componentCount": 1,
        "textChars": 6,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:50.709+00",
          "seconds": 1.609,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/3",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-3",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.1,
            "w": 0.2,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "title",
          "text": "Future",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:50.709+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1f8bb76c-a2ac-4e9f-b5c3-8e5950ffc803",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 4,
      "type": "analysis",
      "title": "The slide uses a visual contrast between two highlighted circles and a list of 'everything else' to suggest a focus imbalance in tech discourse.",
      "function": "summarize",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 27,
        "componentCount": 5,
        "textChars": 300,
        "nDataPoints": 0,
        "notes": "The slide uses a visual contrast between two highlighted circles and a list of 'everything else' to suggest a focus imbalance in tech discourse.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "other"
        ],
        "confidence": 0.95,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:55.408+00",
          "seconds": 6.213,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/4",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-4",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.25,
            "w": 0.15,
            "x": 0.36,
            "y": 0.4
          },
          "kind": "image",
          "text": "Metaverse",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.408+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "92256851-062b-497c-aab7-2f20c9054b62",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.15,
            "x": 0.2,
            "y": 0.4
          },
          "kind": "image",
          "text": "Web3",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.408+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b1f4ee1a-0372-48de-a96f-4afb07318f35",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.25,
            "x": 0.6,
            "y": 0.4
          },
          "kind": "list",
          "text": "Everything else: LEO satellites, plant-based meat, AI, ESG, quantum, robotics, ASICS, 3D printing, China, edge computing, neural interfaces, computational biology, vertical farming, autonomous cars, drones, EVs,...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.408+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a8c5b4a7-84d1-413d-94e1-622d41490009",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.4,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "What do tech people think about for the next decade?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.408+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6503e7b5-ca14-496e-8ca5-894f6c895286",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Tech visions for 2030",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.408+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ae5164c7-54c2-4bd4-b21b-88c53fd176c0",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 5,
      "type": "setup",
      "title": "The slide uses arrows to indicate a conceptual evolution or rebranding of existing technologies into broader, more ambitious categories.",
      "function": "compare_options",
      "rawType": "comparison_table",
      "block": null,
      "metadata": {
        "slideType": "comparison_table",
        "slideTypeCanon": {
          "name": "Comparison table",
          "slug": "comparison_table",
          "status": "active",
          "canonId": "019de52d-0a06-73f8-8813-fe022fab1de2",
          "version": 1,
          "description": null
        },
        "function": "compare_options",
        "functionCanon": {
          "name": "Compare options",
          "slug": "compare_options",
          "status": "active",
          "canonId": "019de52d-167f-7038-aebc-70a9d2e0e33b",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 33,
        "componentCount": 5,
        "textChars": 417,
        "nDataPoints": 0,
        "notes": "The slide uses arrows to indicate a conceptual evolution or rebranding of existing technologies into broader, more ambitious categories.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:52.342+00",
          "seconds": 3.127,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/5",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-5",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Redefine the vision and set a broader goal, for both VR and crypto",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:06+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926b-43daffd0e755",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "list",
          "text": "Cryptocurrencies: Store of value, payments, money transfer (and speculation) -> Web3: New models for building software, internet businesses and networks",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Comparison list",
              "slug": "comparison",
              "status": "active",
              "canonId": "019de52c-fce7-733e-99d3-030a104727bf",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "comparison",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.342+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4905d254-ec9f-4537-aa5a-40f2b1bd07c5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.6,
            "x": 0.2,
            "y": 0.6
          },
          "kind": "list",
          "text": "VR/AR: Gaming headsets, niche industrial tool, science projects -> Metaverse: The next platform after smartphones",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Comparison list",
              "slug": "comparison",
              "status": "active",
              "canonId": "019de52c-fce7-733e-99d3-030a104727bf",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "comparison",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.342+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a7790854-493b-411b-b85f-3e2350146b6c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "The great rebranding",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.342+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a5813d3d-c65d-495c-9f0e-80e85361f376",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.5,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "Redefine the vision and set a broader goal, for both VR and crypto",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.342+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9d68cdc1-53dc-4de3-b833-3ae1e7fba6f5",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "AIDA Model",
            "slug": "aida-model",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-86fc-773c-813f-d416714b8413",
            "version": 1,
            "bodyDocId": null,
            "description": "Attention, Interest, Desire, Action - classic persuasion sequence",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "20907b47-e3e4-45a3-b817-2edcc2537385",
          "evidence": "The great rebranding",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:10.553268+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-5fc8381b1abe",
          "evidence": "Callout 'Redefine the vision and set a broader goal, for both VR and crypto' frames as rebranding",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "a53e82e3-8278-4a65-ba17-2b2ec9fe017d",
          "evidence": "The slide explicitly compares two states (old vs new) for two different technology sectors.",
          "framework": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-05-02 17:37:52.342+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "frameworkName": "comparison-frame"
        }
      ],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 6,
      "type": "setup",
      "function": "transition",
      "rawType": "section_divider",
      "block": null,
      "metadata": {
        "slideType": "section_divider",
        "slideTypeCanon": {
          "name": "Section divider",
          "slug": "section_divider",
          "status": "active",
          "canonId": "019de52d-066a-7402-9554-6ae504999041",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 0,
        "componentCount": 1,
        "textChars": 4,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:51.353+00",
          "seconds": 2.029,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/6",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-6",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.06,
            "w": 0.125,
            "x": 0.202,
            "y": 0.275
          },
          "kind": "title",
          "text": "Web3",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:51.353+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d0891a6f-3cfe-4e98-a0a6-6f40abd95b84",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 7,
      "type": "tension",
      "title": "The slide uses a classic historical quote to frame a modern technological argument.",
      "function": "frame_problem",
      "rawType": "quote_slide",
      "block": null,
      "metadata": {
        "slideType": "quote_slide",
        "slideTypeCanon": {
          "name": "Quote slide",
          "slug": "quote_slide",
          "status": "active",
          "canonId": "019de52d-098e-7555-a9fd-4f0af7e80bc2",
          "version": 1,
          "description": null
        },
        "function": "frame_problem",
        "functionCanon": {
          "name": "Frame problem",
          "slug": "frame_problem",
          "status": "active",
          "canonId": "019de52d-13db-753e-ad70-e9b2d0dab398",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 23,
        "componentCount": 4,
        "textChars": 352,
        "nDataPoints": 0,
        "notes": "The slide uses a classic historical quote to frame a modern technological argument.",
        "elementsJson": [
          "quote_block",
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:51.681+00",
          "seconds": 2.035,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/7",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-7",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "‘Cryptocurrency’ is neither secret nor (only) a currency, ‘blockchain’ or ‘DLT’ are not databases...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:04+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926a-7fa30a111343",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.6,
            "x": 0.2,
            "y": 0.48
          },
          "kind": "paragraph",
          "text": "'Cryptocurrency' is neither secret nor (only) a currency, 'blockchain' or 'DLT' are not databases...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:51.681+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2a9bb65b-0bd4-4665-abdb-0d52c5bc20b9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.6,
            "x": 0.2,
            "y": 0.29
          },
          "kind": "quote",
          "text": "\"The Holy Roman Empire is neither holy, nor Roman, nor an empire\" - Voltaire",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Quote",
              "slug": "quote",
              "status": "active",
              "canonId": "019de52c-f8fb-751e-8bc6-d58e2d59562a",
              "version": 1,
              "description": "Pull quote or testimonial."
            },
            "tool": null,
            "subkind": {
              "name": "Pull quote",
              "slug": "pull-quote",
              "status": "active",
              "canonId": "019de52c-fbf9-76fe-97e1-a0b7540445c9",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "pull-quote",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:51.681+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0ef7c45f-65dc-436f-8cb3-e2cd5770657c",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "quote",
          "text": "“The Holy Roman Empire is neither holy, nor Roman, nor an empire” - Voltaire",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Quote",
              "slug": "quote",
              "status": "active",
              "canonId": "019de52c-f8fb-751e-8bc6-d58e2d59562a",
              "version": 1,
              "description": "Pull quote or testimonial."
            },
            "tool": {
              "name": "Authority citation",
              "slug": "authority-citation",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-49ae-7557-89ad-3fca70469b45",
              "version": 1,
              "bodyDocId": null,
              "description": "Quoting an authority figure, study, or precedent to lend weight.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:04+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926a-834dbb509308",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Authority Bias",
            "slug": "authority-bias",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-c38d-70b9-a284-b2b479763356",
            "version": 1,
            "bodyDocId": null,
            "description": "Expert opinions are weighted more heavily - cite credible sources",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Architect",
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-6557d76979f9",
          "evidence": "Quote attributed to Voltaire borrows historical authority",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-684022322e45",
          "evidence": "Holy-Roman-Empire analogy applied to crypto/blockchain naming",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Opening Hooks",
            "slug": "opening-hooks",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-aeb0-77d5-bfbd-9cd9a6be8186",
            "version": 1,
            "bodyDocId": null,
            "description": "Techniques to capture attention: Startling statistic, provocative question, short story, analogy, contrast",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-625ac11a1358",
          "evidence": "Voltaire quote opens Web3 section as provocative hook",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "74aa976e-b0f5-420c-82cc-9893f2482441",
          "evidence": "Uses the Voltaire quote as an analogy to debunk tech terminology.",
          "framework": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-05-02 17:37:51.681+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "frameworkName": "metaphor-analogy"
        }
      ],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 19,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-302a6445ecce",
          "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
          "position": 1,
          "objective": "Frame Web3 as real-but-ambiguous via converging data points",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 8,
      "type": "setup",
      "title": "Uses a simple linear process diagram to contrast the three eras of the web.",
      "function": "establish_context",
      "rawType": "transition",
      "block": null,
      "metadata": {
        "slideType": "transition",
        "slideTypeCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-0693-7766-9f05-887f41f8e41e",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 16,
        "componentCount": 3,
        "textChars": 293,
        "nDataPoints": 0,
        "notes": "Uses a simple linear process diagram to contrast the three eras of the web.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "process_diagram"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:52.337+00",
          "seconds": 2.661,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/8",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-8",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.4,
            "w": 0.7,
            "x": 0.15,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Web (Users read, Publishers create and make money) -> Web 2.0 (Users create, Networks control & make money) -> Web3 (Users create, Users control networks & money)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": {
              "name": "Process flow",
              "slug": "process",
              "status": "active",
              "canonId": "019de52d-039c-718f-ad3a-efe9c4b3c838",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "process",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.337+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "01e08671-f3d7-4bf3-81e9-6e922c14b478",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "A blockchain is a distributed, open computing system - or at least, that's the plan",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.337+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b3b1df7c-5e70-4391-bbba-bc2c33521fb6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Web3 - a dream of a next version of the internet",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.337+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "dccf4e59-718b-4072-b318-13e3e71b7cf8",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Before-After-Bridge",
            "slug": "before-after-bridge",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-8604-7188-883f-42370288ad05",
            "version": 1,
            "bodyDocId": null,
            "description": "Narrative structure: Paint the before, show the after, explain the bridge",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "035f8467-f363-4ce9-bc2f-65d4217f2a03",
          "evidence": "Web (Users read, Publishers create and make money) -> Web 2.0 (Users create, Networks control & make money) -> Web3 (Users create, Users control networks & money)",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:59:10.761363+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "5796f132-19c3-41cb-8b55-88f5126ae54d",
          "evidence": "Linear progression of web eras",
          "framework": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-05-02 17:37:52.337+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "frameworkName": "evolutionary-model"
        }
      ],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 19,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-302a6445ecce",
          "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
          "position": 1,
          "objective": "Frame Web3 as real-but-ambiguous via converging data points",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 9,
      "type": "analysis",
      "title": "The slide uses a linear process flow to illustrate the evolution of software development and execution models.",
      "function": "present_framework",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "present_framework",
        "functionCanon": {
          "name": "Present framework",
          "slug": "present_framework",
          "status": "active",
          "canonId": "019de52d-1403-7667-9100-d2ac6709f750",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 17,
        "componentCount": 4,
        "textChars": 205,
        "nDataPoints": 0,
        "notes": "The slide uses a linear process flow to illustrate the evolution of software development and execution models.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "process_diagram"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:52.699+00",
          "seconds": 2.644,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/9",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-9",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Open source changed how code is written - Web3 tries to change where it runs",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:05+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926a-9f230a35af7a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.4,
            "w": 0.6,
            "x": 0.2,
            "y": 0.3
          },
          "kind": "diagram",
          "text": "Open Source -> Web & SaaS -> Web3",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": {
              "name": "Process flow",
              "slug": "process",
              "status": "active",
              "canonId": "019de52d-039c-718f-ad3a-efe9c4b3c838",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "process",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.699+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e3556170-4f15-40a3-aae6-9d41de8cdf1a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "Open source changed how code is written - Web3 tries to change where it runs",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.699+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "da83097c-eec0-4b69-91eb-ace7d83b05ed",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Web3 = Open Source 2",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.699+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "48c112e6-989f-437d-9b9e-ffada15d1f2d",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Argument from Analogy",
            "slug": "argument-from-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9e3d-7762-a994-72a2f7104e7c",
            "version": 1,
            "bodyDocId": null,
            "description": "Drawing conclusions based on similarities between situations",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-6ee5a7072f3e",
          "evidence": "Title 'Web3 = Open Source 2' explicitly draws parallel to open source",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-7317c960d6a0",
          "evidence": "Title states the thesis equation",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Analytical method",
            "slug": "analytical-method",
            "status": "active",
            "bestFor": null,
            "canonId": "b42c4911-7946-49b5-951c-5f3d23f4e2bd",
            "version": 1,
            "bodyDocId": null,
            "description": "Diagnostic / structuring methods (5-whys, fishbone, issue tree, hypothesis-driven).",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "1abffc3b-e0a0-45d1-afdb-c1feb912ebcb",
          "evidence": "Open source changed how code is written - Web3 tries to change where it runs",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 21:59:10.831953+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "1db2ea19-89dd-4b96-8be0-537020f2280a",
          "evidence": "Linear progression from Open Source to Web3",
          "framework": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-05-02 17:37:52.699+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "frameworkName": "evolutionary-model"
        }
      ],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 19,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-302a6445ecce",
          "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
          "position": 1,
          "objective": "Frame Web3 as real-but-ambiguous via converging data points",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 10,
      "type": "setup",
      "title": "The slide uses a simple comparison list format to contrast old and new paradigms.",
      "function": "compare_options",
      "rawType": "comparison_table",
      "block": null,
      "metadata": {
        "slideType": "comparison_table",
        "slideTypeCanon": {
          "name": "Comparison table",
          "slug": "comparison_table",
          "status": "active",
          "canonId": "019de52d-0a06-73f8-8813-fe022fab1de2",
          "version": 1,
          "description": null
        },
        "function": "compare_options",
        "functionCanon": {
          "name": "Compare options",
          "slug": "compare_options",
          "status": "active",
          "canonId": "019de52d-167f-7038-aebc-70a9d2e0e33b",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 26,
        "componentCount": 5,
        "textChars": 282,
        "nDataPoints": 0,
        "notes": "The slide uses a simple comparison list format to contrast old and new paradigms.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "other"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:55.705+00",
          "seconds": 5.627,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/10",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-10",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.45
          },
          "kind": "list",
          "text": "Companies make money -> Users make money",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Comparison list",
              "slug": "comparison",
              "status": "active",
              "canonId": "019de52c-fce7-733e-99d3-030a104727bf",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "comparison",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.705+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "077d0dc5-75a0-4048-a699-b05ea5a254a6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "list",
          "text": "Closed and centralised -> Open and decentralised",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Comparison list",
              "slug": "comparison",
              "status": "active",
              "canonId": "019de52c-fce7-733e-99d3-030a104727bf",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "comparison",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.705+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9a9e6cbf-2b68-4b42-a105-f110ec6bb0b0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.65
          },
          "kind": "list",
          "text": "All the old problems -> All the old problems, in exciting new ways",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Comparison list",
              "slug": "comparison",
              "status": "active",
              "canonId": "019de52c-fce7-733e-99d3-030a104727bf",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "comparison",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.705+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cb201c22-07ef-4a3e-b198-06033113e30e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "Like open source and the internet in their early days, a tech movement with a strong dose of religion",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.705+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5d17a525-8ddc-454f-a813-c8e4d4f6c0bb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.35,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "A messianic vision for tech",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.705+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e16a203a-8d4f-4a36-a95a-93e24f99d42f",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Comparison frame",
            "slug": "comparison-frame",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-484b-7399-a4fc-d14644b99f93",
            "version": 1,
            "bodyDocId": null,
            "description": "Two or more states/subjects placed side by side to expose a gap.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "5a62864a-3dff-44c5-9369-8e902e06ec5d",
          "evidence": "Closed and centralised -> Open and decentralised",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:10.902663+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 10,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "94834476-d8c6-481c-809e-542e83f1321c",
          "evidence": "The slide explicitly compares two states across three dimensions.",
          "framework": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-05-02 17:37:55.705+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 10,
          "frameworkName": "comparison-frame"
        }
      ],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 19,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-302a6445ecce",
          "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
          "position": 1,
          "objective": "Frame Web3 as real-but-ambiguous via converging data points",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 11,
      "type": "analysis",
      "title": "The chart illustrates the significant growth and volatility of the two largest crypto networks over a 5-year period.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 50,
        "componentCount": 7,
        "textChars": 337,
        "nDataPoints": 2,
        "notes": "The chart illustrates the significant growth and volatility of the two largest crypto networks over a 5-year period.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:52.847+00",
          "seconds": 2.584,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/11",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-11",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Speculation and lots of market mechanics - but also billions of dollars of real money invested",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:05+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926a-dd56d32e57d1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.55,
            "w": 0.7,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Market capitalisations for the two largest crypto networks ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.847+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7352295f-78c0-43b6-a33c-1169f2e677cb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.05,
            "x": 0.03,
            "y": 0.35
          },
          "kind": "legend",
          "text": "Bitcoin\nEthereum",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.847+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5d604418-03a8-4674-baf6-5fb9600abfa7",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Market capitalization",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:05+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926a-e1023c87946f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: CoinMarketCap",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.847+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "97ff31c3-3aa7-467b-b368-d0af749e6f34",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "Speculation and lots of market mechanics - but also billions of dollars of real money invested",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.847+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1537ab33-132f-401b-a9e2-16ed46d79034",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Obligatory market cap chart",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.847+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b3e62592-6a89-4914-966f-8ec364f02e44",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-7e802cfc0c1a",
          "evidence": "Self-aware title 'Obligatory market cap chart'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-1b83-7130-9338-7b0a1d61ff47",
          "evidence": "Callout annotates 'billions of dollars of real money invested'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chartjunk Elimination",
            "slug": "chartjunk-elimination",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
            "version": 1,
            "bodyDocId": null,
            "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "9928f90f-880c-4900-b4d7-83c0ac002a03",
          "evidence": "Market capitalisations for the two largest crypto networks ($bn)",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:59:10.972106+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-1b83-7130-9338-749e8df33fd2",
          "evidence": "Market cap chart visualises crypto growth",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 19,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-302a6445ecce",
          "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
          "position": 1,
          "objective": "Frame Web3 as real-but-ambiguous via converging data points",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 12,
      "type": "analysis",
      "title": "The chart highlights the relatively small size of crypto assets compared to traditional asset classes like government and corporate bonds.",
      "function": "size_opportunity",
      "rawType": "market_landscape",
      "block": null,
      "metadata": {
        "slideType": "market_landscape",
        "slideTypeCanon": {
          "name": "Market landscape",
          "slug": "market_landscape",
          "status": "active",
          "canonId": "019de52d-0b6d-75db-a946-9ac362e3afc2",
          "version": 1,
          "description": null
        },
        "function": "size_opportunity",
        "functionCanon": {
          "name": "Size opportunity",
          "slug": "size_opportunity",
          "status": "active",
          "canonId": "019de52d-147b-7568-8828-a74a27697618",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 43,
        "componentCount": 6,
        "textChars": 332,
        "nDataPoints": 6,
        "notes": "The chart highlights the relatively small size of crypto assets compared to traditional asset classes like government and corporate bonds.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_vertical"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:52.994+00",
          "seconds": 2.662,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/12",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-12",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Digital assets as a store of value are now taken somewhat seriously in financial markets",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:05+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926a-f959953b2e94",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.55,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Current asset value, 2021 ($tr)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.994+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "775f615b-9eec-4358-bb13-5a232f749b8c",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Current asset value: $tr",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:05+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926a-fd90aa0afcf7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.4,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: CoinMarketCap, US Federal Reserve, World Gold Council, Bloomberg",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.994+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7b3eeb22-d499-4fb4-a7cc-91e1503c6f6f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "Digital assets as a store of value are now taken somewhat seriously in financial markets",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.994+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "18b9ec1e-ea7d-497d-a416-4dd55ca1af88",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.35,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "The 'store of value' use case",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.994+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9fb9df58-14b0-48fa-b25f-6559318c17ea",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-83a6f30fba24",
          "evidence": "Title names the use case being evaluated",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-86fdf46bb4e7",
          "evidence": "$tr-scale figures grounding the abstract concept",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 19,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-302a6445ecce",
          "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
          "position": 1,
          "objective": "Frame Web3 as real-but-ambiguous via converging data points",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 13,
      "type": "analysis",
      "title": "The slide uses circular callouts to present key performance indicators.",
      "function": "quantify_impact",
      "rawType": "kpi_dashboard",
      "block": null,
      "metadata": {
        "slideType": "kpi_dashboard",
        "slideTypeCanon": {
          "name": "KPI dashboard",
          "slug": "kpi_dashboard",
          "status": "active",
          "canonId": "019de52d-0be5-7295-af4d-b850fe7b7e65",
          "version": 1,
          "description": null
        },
        "function": "quantify_impact",
        "functionCanon": {
          "name": "Quantify impact",
          "slug": "quantify_impact",
          "status": "active",
          "canonId": "019de52d-1630-720d-b57d-fa7f76bebd8d",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 55,
        "componentCount": 8,
        "textChars": 291,
        "nDataPoints": 4,
        "notes": "The slide uses circular callouts to present key performance indicators.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "icon_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:53.409+00",
          "seconds": 2.921,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/13",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-13",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.25,
            "w": 0.15,
            "x": 0.2,
            "y": 0.4
          },
          "kind": "metric",
          "text": "3-4m addresses & $60-70bn linked to DeFi apps (?)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.409+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "12d93ec5-6635-4610-bb25-e2174d04d634",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.15,
            "x": 0.6,
            "y": 0.4
          },
          "kind": "metric",
          "text": "200k OpenSea accounts",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.409+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1609cca2-e205-4fe6-a813-bcb976543499",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.15,
            "x": 0.8,
            "y": 0.4
          },
          "kind": "metric",
          "text": "450k ENS domains",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.409+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "53c53608-535e-46fe-98e2-738716f5482e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.15,
            "x": 0.4,
            "y": 0.4
          },
          "kind": "metric",
          "text": "10m+ Metamask MAUs",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.409+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d2c62c92-ba71-42e8-bb20-77a49596c837",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "User/Asset Traction: 10m+",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:06+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926b-28bde6c4a229",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.3,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Dune Analytics @rchen8, DeFi Pulse, Companies",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.409+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "52effe89-8b05-4956-815c-3314d00e5143",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.5,
            "x": 0.2,
            "y": 0.13
          },
          "kind": "subtitle",
          "text": "Behind the speculation and market caps, what's the traction for applications?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.409+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "da5dacca-d7ea-45c2-a0cf-38cb9a7bc504",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.06
          },
          "kind": "title",
          "text": "Traction for software use cases?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.409+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a282a1b7-e14c-49be-ae3e-6f1ba78b3367",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-1b83-7130-9338-8802b4bb0c58",
          "evidence": "KPI dashboard for software-use traction (10m+ scale)",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 19,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-302a6445ecce",
          "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
          "position": 1,
          "objective": "Frame Web3 as real-but-ambiguous via converging data points",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 14,
      "type": "analysis",
      "title": "The slide uses a screenshot of the OpenSea leaderboard to illustrate the 'white-hot' nature of the market.",
      "function": "establish_context",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 42,
        "componentCount": 5,
        "textChars": 496,
        "nDataPoints": 6,
        "notes": "The slide uses a screenshot of the OpenSea leaderboard to illustrate the 'white-hot' nature of the market.",
        "elementsJson": [
          "headline_text",
          "bullet_list",
          "screenshot"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:53.367+00",
          "seconds": 2.684,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/14",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-14",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Interesting as experiments in digital property... But also a tech building block with broader use cases.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:06+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926b-5aaf8005b3f4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.65,
            "w": 0.32,
            "x": 0.59,
            "y": 0.15
          },
          "kind": "image",
          "text": "OpenSea leaderboard screenshot",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Screenshot",
              "slug": "screenshot",
              "status": "active",
              "canonId": "019de52c-fd87-7509-8391-3d79fb339379",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "screenshot",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.367+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "95aa9b00-c5d2-474d-9b93-4c2520a519f7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.4,
            "w": 0.45,
            "x": 0.06,
            "y": 0.35
          },
          "kind": "list",
          "text": "Explosion of interest and quoted value\n'Cultural value' versus 'intrinsic value' is not a problematic concept - ask Supreme\nBut tiny absolute numbers of people so far - by design! - and lots of noise and circularity\nInteresting as experiments in digital property...\nBut also a tech building block with broader use cases",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.367+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e075867c-f722-4003-83d4-d2fde9d67fbd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.06,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: OpenSea",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.367+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "51f93eb1-b42f-42ad-817e-054a00e2f109",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.06,
            "y": 0.23
          },
          "kind": "title",
          "text": "NFTs, today's white-hot idea",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.367+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a284e10d-4413-40ca-8fb5-0a81e96acaba",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-8e772c1e68b7",
          "evidence": "Title 'NFTs, today's white-hot idea' frames the topic",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-1b83-7130-9338-92cf5750f608",
          "evidence": "Callout positions NFTs as both experiment and building block",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 19,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-302a6445ecce",
          "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
          "position": 1,
          "objective": "Frame Web3 as real-but-ambiguous via converging data points",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 15,
      "type": "setup",
      "title": "The map uses a hexagonal grid to visualize network density/coverage.",
      "function": "establish_context",
      "rawType": "geographic_map",
      "block": null,
      "metadata": {
        "slideType": "geographic_map",
        "slideTypeCanon": {
          "name": "Geographic map",
          "slug": "geographic_map",
          "status": "active",
          "canonId": "019de52d-09de-7153-8845-584c1a9d0c83",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 22,
        "componentCount": 5,
        "textChars": 168,
        "nDataPoints": 0,
        "notes": "The map uses a hexagonal grid to visualize network density/coverage.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "map"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:56.269+00",
          "seconds": 5.54,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/15",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-15",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 1,
            "w": 0.5,
            "x": 0.5,
            "y": 0
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Map",
              "slug": "map",
              "status": "active",
              "canonId": "019de52c-fe4d-77bd-b0a4-d72d58b9e5a4",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "map",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.269+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "466a2530-8f67-4fab-b7eb-7c063b4965ab",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.07,
            "w": 0.39,
            "x": 0.045,
            "y": 0.385
          },
          "kind": "paragraph",
          "text": "Helium is a distributed network of low power, low bandwidth, IoT radio access points",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.269+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "235da647-ee2f-4e49-8d07-c288ab5f68f1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.39,
            "x": 0.045,
            "y": 0.49
          },
          "kind": "paragraph",
          "text": "Decentralised incentives, tracking and payment",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.269+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "27ef8398-6dd7-426a-a1e1-d3d8f3a97643",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.045,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: Helium",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.269+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2a4d4871-8050-4932-b1dc-7c7cd03d8972",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.37,
            "x": 0.045,
            "y": 0.245
          },
          "kind": "title",
          "text": "New incentive structures",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.269+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "749553f9-3f41-48a2-be50-e18817edbbea",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [
        {
          "matchId": "c28ace4b-de86-4977-ac89-06ddfd9a411f",
          "evidence": "Geographic heatmap of network coverage",
          "framework": null,
          "confidence": 1,
          "extraction": {
            "at": "2026-05-02 17:37:56.269+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 15,
          "frameworkName": "map-spatial"
        }
      ],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 19,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-302a6445ecce",
          "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
          "position": 1,
          "objective": "Frame Web3 as real-but-ambiguous via converging data points",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 16,
      "type": "analysis",
      "function": "quantify_impact",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "quantify_impact",
        "functionCanon": {
          "name": "Quantify impact",
          "slug": "quantify_impact",
          "status": "active",
          "canonId": "019de52d-1630-720d-b57d-fa7f76bebd8d",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 25,
        "componentCount": 5,
        "textChars": 163,
        "nDataPoints": 1,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:53.657+00",
          "seconds": 2.833,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/16",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-16",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.55,
            "w": 0.78,
            "x": 0.16,
            "y": 0.27
          },
          "kind": "chart",
          "text": "Active Helium hotspots",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.657+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c4ed34cf-1646-422f-82f5-2652d59f16d0",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Active Helium hotspots",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:06+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926b-17d520563895",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.018,
            "w": 0.076,
            "x": 0.204,
            "y": 0.908
          },
          "kind": "source-note",
          "text": "Source: Helium",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.657+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "62bde23e-bb1a-45bd-9b18-91fc49f4ca3e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.021,
            "w": 0.722,
            "x": 0.201,
            "y": 0.132
          },
          "kind": "subtitle",
          "text": "Helium proposes a scalable incentive and payment model for a public wireless network",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.657+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b63e87dd-14f4-4f9b-98db-7832f56622e0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.042,
            "w": 0.287,
            "x": 0.201,
            "y": 0.055
          },
          "kind": "title",
          "text": "A nice adoption curve",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.657+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "13fb5668-d609-44af-9f29-60158c6c56eb",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-980ff683f560",
          "evidence": "Title 'A nice adoption curve' is the editorial verdict",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 16,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-1b83-7130-9338-97154bafabee",
          "evidence": "Adoption curve chart",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 16,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 19,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-302a6445ecce",
          "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
          "position": 1,
          "objective": "Frame Web3 as real-but-ambiguous via converging data points",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 17,
      "type": "tension",
      "title": "The slide uses a contrast-pair structure to challenge common perceptions of market valuation.",
      "function": "frame_problem",
      "rawType": "problem_statement",
      "block": null,
      "metadata": {
        "slideType": "problem_statement",
        "slideTypeCanon": {
          "name": "Problem statement",
          "slug": "problem_statement",
          "status": "active",
          "canonId": "019de52d-0879-768d-bba8-8da8a5a121d4",
          "version": 1,
          "description": null
        },
        "function": "frame_problem",
        "functionCanon": {
          "name": "Frame problem",
          "slug": "frame_problem",
          "status": "active",
          "canonId": "019de52d-13db-753e-ad70-e9b2d0dab398",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 38,
        "componentCount": 5,
        "textChars": 538,
        "nDataPoints": 0,
        "notes": "The slide uses a contrast-pair structure to challenge common perceptions of market valuation.",
        "elementsJson": [
          "headline_text",
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:53.47+00",
          "seconds": 2.645,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/17",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-17",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "A share price is an opinion of the future; operating metrics are data about the present. A token price is neither, and both.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:06+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926b-ad84e0e39f18",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.3,
            "x": 0.6,
            "y": 0.35
          },
          "kind": "list",
          "text": "Ponzi schemes? Currencies, art and social networks are based on collective adoption. And early adopters benefit most... But this is also true of Ponzi schemes",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Comparison list",
              "slug": "comparison",
              "status": "active",
              "canonId": "019de52c-fce7-733e-99d3-030a104727bf",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "comparison",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.47+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "25fe1c06-1a54-404d-af29-4404411c3e42",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.3,
            "x": 0.2,
            "y": 0.35
          },
          "kind": "list",
          "text": "Market caps? A share price is an opinion of the future; operating metrics are data about the present. A token price is neither, and both. So - is speculation validation?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Comparison list",
              "slug": "comparison",
              "status": "active",
              "canonId": "019de52c-fce7-733e-99d3-030a104727bf",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "comparison",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.47+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b12b6bec-7dd6-400b-9b35-a7f269cfc997",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.5,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "Massive noise, hype and irrational criticism from all directions",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.47+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "aa19ba72-21b1-4e1a-a907-ca18d81a1347",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "What are we looking at?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.47+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2ebc8c64-b741-42fe-bc1a-fce87dd68d6c",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-9ce589ab1344",
          "evidence": "Callout 'A token price is neither, and both' is the slide insight",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 17,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Analytical method",
            "slug": "analytical-method",
            "status": "active",
            "bestFor": null,
            "canonId": "b42c4911-7946-49b5-951c-5f3d23f4e2bd",
            "version": 1,
            "bodyDocId": null,
            "description": "Diagnostic / structuring methods (5-whys, fishbone, issue tree, hypothesis-driven).",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "eaef7ec3-84a6-4631-8f2c-9c6d80312c7b",
          "evidence": "list/comparison: Market caps? A share price is an opinion of the future; operating metrics are data about the present. A token price is neither, and both.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:06.00944+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 17,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Problem Statement Canvas",
            "slug": "problem-statement-canvas",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-839d-744b-ad11-9bf3e3642a18",
            "version": 1,
            "bodyDocId": null,
            "description": "Structured definition of the problem: What? Who? Where? When? Scale?",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "c0d2bff8-886d-43db-a4c8-5ba4f1332dd9",
          "evidence": "list/comparison: Market caps? A share price is an opinion of the future; operating metrics are data about the present. A token price is neither, and both.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:05.974519+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 17,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "b4cf1722-94bb-4af7-9af0-59f5ca2b8d54",
          "evidence": "The slide presents two opposing concepts (Market caps vs Ponzi schemes) to highlight a nuance in token valuation.",
          "framework": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-05-02 17:37:53.47+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 17,
          "frameworkName": "contrast-pairs"
        }
      ],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 19,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-302a6445ecce",
          "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
          "position": 1,
          "objective": "Frame Web3 as real-but-ambiguous via converging data points",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 18,
      "type": "setup",
      "title": "The slide uses a simple visual layout with three circles to emphasize key characteristics of the subject matter.",
      "function": "summarize",
      "rawType": "key_messages",
      "block": null,
      "metadata": {
        "slideType": "key_messages",
        "slideTypeCanon": {
          "name": "Key messages",
          "slug": "key_messages",
          "status": "active",
          "canonId": "019de52d-0712-703f-89f5-bda6688faf3f",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 39,
        "componentCount": 6,
        "textChars": 372,
        "nDataPoints": 0,
        "notes": "The slide uses a simple visual layout with three circles to emphasize key characteristics of the subject matter.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "icon_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:53.839+00",
          "seconds": 3.001,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/18",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-18",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Looks much like the early consumer internet, or open source (but also like lots of other things that never worked)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:06+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926b-8c5621496eda",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.2,
            "x": 0.2,
            "y": 0.35
          },
          "kind": "other",
          "text": "Deep technical understanding still needed",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Other",
              "slug": "other",
              "status": "active",
              "canonId": "019de52c-fa90-743c-8bf6-20d1fbe82b6d",
              "version": 1,
              "description": "Fallback when no canonical kind applies."
            },
            "tool": null,
            "subkind": {
              "name": "Unclassified",
              "slug": "unclassified",
              "status": "active",
              "canonId": "019de52d-05ca-77db-81fb-db7d4234bbc0",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "unclassified",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.839+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "038f8062-4dbb-41cf-920a-8da8f487bcd6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.2,
            "x": 0.6,
            "y": 0.35
          },
          "kind": "other",
          "text": "Massive creative energy, but also huge uncertainty",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Other",
              "slug": "other",
              "status": "active",
              "canonId": "019de52c-fa90-743c-8bf6-20d1fbe82b6d",
              "version": 1,
              "description": "Fallback when no canonical kind applies."
            },
            "tool": null,
            "subkind": {
              "name": "Unclassified",
              "slug": "unclassified",
              "status": "active",
              "canonId": "019de52d-05ca-77db-81fb-db7d4234bbc0",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "unclassified",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.839+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "62d24f1d-e364-49b7-97e5-bc19b878d866",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.2,
            "x": 0.4,
            "y": 0.35
          },
          "kind": "other",
          "text": "Fragmented & complex",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Other",
              "slug": "other",
              "status": "active",
              "canonId": "019de52c-fa90-743c-8bf6-20d1fbe82b6d",
              "version": 1,
              "description": "Fallback when no canonical kind applies."
            },
            "tool": null,
            "subkind": {
              "name": "Unclassified",
              "slug": "unclassified",
              "status": "active",
              "canonId": "019de52d-05ca-77db-81fb-db7d4234bbc0",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "unclassified",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.839+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b92495fe-b7ee-45d3-b2f2-49ddbe81693b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "Looks much like the early consumer internet, or open source (but also like lots of other things that never worked)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.839+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5f527ad5-1ac2-42e7-a66a-3e6bd0f931d3",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Early (still!), exciting, unclear",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.839+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "885e4b91-eed2-4bf7-a408-8ebbee5ef04e",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Tricolon",
            "slug": "tricolon",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-a13d-7356-9038-da27abe565f8",
            "version": 1,
            "bodyDocId": null,
            "description": "Three parallel phrases of increasing length or intensity",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "loop",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-a51896809dff",
          "evidence": "Three-word verdict in title — early / exciting / unclear",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 18,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-a1adb02db4ab",
          "evidence": "Title 'Early (still!), exciting, unclear' synthesises the loop",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 90,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 18,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 19,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-302a6445ecce",
          "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
          "position": 1,
          "objective": "Frame Web3 as real-but-ambiguous via converging data points",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 19,
      "type": "tension",
      "title": "The slide uses a rhetorical device (antithesis/paradox) to challenge the binary view of open vs. closed systems.",
      "function": "frame_problem",
      "rawType": "thesis_headline",
      "block": null,
      "metadata": {
        "slideType": "thesis_headline",
        "slideTypeCanon": {
          "name": "Thesis headline",
          "slug": "thesis_headline",
          "status": "active",
          "canonId": "019de52d-073a-70cb-b9f6-772a597bb5af",
          "version": 1,
          "description": null
        },
        "function": "frame_problem",
        "functionCanon": {
          "name": "Frame problem",
          "slug": "frame_problem",
          "status": "active",
          "canonId": "019de52d-13db-753e-ad70-e9b2d0dab398",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 28,
        "componentCount": 5,
        "textChars": 319,
        "nDataPoints": 0,
        "notes": "The slide uses a rhetorical device (antithesis/paradox) to challenge the binary view of open vs. closed systems.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "photo",
          "footnote"
        ],
        "confidence": 0.95,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:54.03+00",
          "seconds": 3.166,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/19",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-19",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "So what do open or decentralised mean? Where, and how, at what layers?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:06+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926b-73b41bdd28ab",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.7,
            "w": 0.3,
            "x": 0.6,
            "y": 0.15
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:54.03+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "724d35b7-8705-4564-89d7-dcb163ced34d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.4,
            "x": 0.07,
            "y": 0.45
          },
          "kind": "paragraph",
          "text": "The iPhone is full of open source software... And yet it's closed... And yet there are millions of apps and billions of app installs. So what do open or decentralised mean? Where, and how, at what layers?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:54.03+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fd2d4414-f483-4aa5-8355-beb4d6f275f1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.1,
            "x": 0.07,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: Apple",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:54.03+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c538fa75-bca8-4fe6-8a9d-0d7bb4362641",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.4,
            "x": 0.07,
            "y": 0.24
          },
          "kind": "title",
          "text": "Is an iPhone open or closed? Yes",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:54.03+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e74c632b-c1de-4024-a6c1-db496df5b6ca",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Curiosity Gap",
            "slug": "curiosity-gap",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9703-74ef-8b85-96dfd8525025",
            "version": 1,
            "bodyDocId": null,
            "description": "People seek missing information - create open questions that demand resolution",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-aa7c103ab7da",
          "evidence": "Title 'Is an iPhone open or closed? Yes' poses paradox",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Audience Definition",
            "slug": "audience-definition",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-7f2a-775d-aeee-ff099bcb7756",
            "version": 1,
            "bodyDocId": null,
            "description": "Six key questions: Who are they? What do they know? What do they believe? What do they care about? What do they fear? What decisions can they make?",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "790ea795-d5c8-4838-b985-fc0c4c47d73e",
          "evidence": "callout: So what do open or decentralised mean? Where, and how, at what layers?",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:06.113459+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Picture Superiority Effect",
            "slug": "picture-superiority-effect",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-c201-7014-bb58-3e85e3e11dfd",
            "version": 1,
            "bodyDocId": null,
            "description": "Pictures remembered 6x better than words - prioritize visuals over text",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-1b83-7130-9338-aced297fa764",
          "evidence": "Large iPhone photo carries the argument visually",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "1a9732fe-c3bf-479f-aeb2-5d162c6d47aa",
          "evidence": "The slide uses the structure 'X is Y, and yet it is not Y' to frame the problem.",
          "framework": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-05-02 17:37:54.03+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "frameworkName": "antithesis"
        }
      ],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 19,
          "from": 7,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-302a6445ecce",
          "evidence": "Voltaire quote → market cap → store-of-value → NFT adoption → traction → 'Early, exciting, unclear' synthesis on p18",
          "position": 1,
          "objective": "Frame Web3 as real-but-ambiguous via converging data points",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 20,
      "type": "setup",
      "function": "transition",
      "rawType": "section_divider",
      "block": null,
      "metadata": {
        "slideType": "section_divider",
        "slideTypeCanon": {
          "name": "Section divider",
          "slug": "section_divider",
          "status": "active",
          "canonId": "019de52d-066a-7402-9554-6ae504999041",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 0,
        "componentCount": 1,
        "textChars": 9,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:52.815+00",
          "seconds": 1.849,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/20",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-20",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.05,
            "w": 0.22,
            "x": 0.202,
            "y": 0.278
          },
          "kind": "title",
          "text": "Metaverse",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:52.815+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8cb4e736-6666-47ee-9b65-7adae91f4636",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Section divider",
            "slug": "section-divider",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4c66-707d-8d1f-6e14547134c7",
            "version": 1,
            "bodyDocId": null,
            "description": "A transitional slide marking the start of a new section.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "b295eaca-265c-43a9-9843-ba562feeb351",
          "evidence": "title/headline: Metaverse",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 21:59:06.181409+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 20,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 28,
          "from": 20,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3584a4ab743d",
          "evidence": "Mood boards → VR sales → Roblox vs games TAM → 'doesn't guarantee universal appeal' p28",
          "position": 2,
          "objective": "Stress-test the metaverse thesis against actual traction",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 21,
      "type": "setup",
      "function": "summarize",
      "rawType": "thesis_headline",
      "block": null,
      "metadata": {
        "slideType": "thesis_headline",
        "slideTypeCanon": {
          "name": "Thesis headline",
          "slug": "thesis_headline",
          "status": "active",
          "canonId": "019de52d-073a-70cb-b9f6-772a597bb5af",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 23,
        "componentCount": 5,
        "textChars": 196,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "other"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:53.529+00",
          "seconds": 2.492,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/21",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-21",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.35,
            "w": 0.2,
            "x": 0.7,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Self-expression, place, identity, pop culture",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "other",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.529+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "42f87d7c-a033-4127-8212-b4d3ce4b67e0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.2,
            "x": 0.2,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "VR & AR as the next universal device after smartphones",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "other",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.529+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4b3045df-ae9c-44e5-bdc6-027a2a599307",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.2,
            "x": 0.45,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Games break out VR & AR expand far beyond games",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "other",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.529+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c0d38565-f89f-41a4-94c8-5ef4e842c427",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "The metaverse thesis",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.529+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "18aa2c9d-8e3a-4ad9-acea-71dc8e01da91",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.3,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "A vision of a universal screen",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.529+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "306892bf-2a0f-4c5c-86cc-13343af32c5a",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Big Idea Formula",
            "slug": "big-idea-formula",
            "status": "active",
            "bestFor": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
            "canonId": "019dd956-7dd1-74d7-9866-ffdef19ecfbf",
            "version": 1,
            "bodyDocId": "c30d7484-69e0-4e21-82cf-20fa0966869e",
            "description": "Nancy Duarte's articulation of how to frame a presentation's central message: the speaker's unique point of view plus what's at stake for the audience, expressed as one complete declarative sentence. The narrative-driven counterpart to Minto's analytical governing thought.",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "8feec287-a657-463b-9343-92bd3f405b8b",
          "evidence": "diagram/other: VR & AR as the next universal device after smartphones",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:06.251433+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 21,
          "whyItWorks": "Solves the topic-not-thesis trap and the stake-less recommendation trap simultaneously. A single declarative sentence with a verb forces the speaker's stance into the room; routing the consequence through the word 'you' translates internal urgency into the audience's currency. The result is short enough to be repeated after the meeting — and that repetition is the persuasion mechanism.",
          "antipattern": "A topic dressed as a thesis ('Sustainability Roadmap 2026'), a stake attached to the speaker rather than the audience, two ideas spliced with 'and', abstract verbs (leverage / unlock / empower) that survive deletion, or writing the Big Idea after the deck is already built so the slides don't actually defend it.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to commit to a single declarative thesis before slide one — a sentence that names the speaker's stance and routes a consequence through the audience's currency. Acts as the filter every slide, anecdote, and chart must ladder up to."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 28,
          "from": 20,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3584a4ab743d",
          "evidence": "Mood boards → VR sales → Roblox vs games TAM → 'doesn't guarantee universal appeal' p28",
          "position": 2,
          "objective": "Stress-test the metaverse thesis against actual traction",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 22,
      "type": "setup",
      "title": "The slide uses a vertical red dotted line to visually separate the two eras.",
      "function": "compare_options",
      "rawType": "comparison_table",
      "block": null,
      "metadata": {
        "slideType": "comparison_table",
        "slideTypeCanon": {
          "name": "Comparison table",
          "slug": "comparison_table",
          "status": "active",
          "canonId": "019de52d-0a06-73f8-8813-fe022fab1de2",
          "version": 1,
          "description": null
        },
        "function": "compare_options",
        "functionCanon": {
          "name": "Compare options",
          "slug": "compare_options",
          "status": "active",
          "canonId": "019de52d-167f-7038-aebc-70a9d2e0e33b",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 18,
        "componentCount": 4,
        "textChars": 240,
        "nDataPoints": 0,
        "notes": "The slide uses a vertical red dotted line to visually separate the two eras.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "comparison_table"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:53.803+00",
          "seconds": 2.642,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/22",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-22",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Many of these words will probably mean something - but not necessarily like that",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:07+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926c-0a948be73ae0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.6,
            "x": 0.2,
            "y": 0.4
          },
          "kind": "list",
          "text": "1994: \"Information Superhighway\" vs 2021: \"Metaverse\"",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Comparison list",
              "slug": "comparison",
              "status": "active",
              "canonId": "019de52c-fce7-733e-99d3-030a104727bf",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "comparison",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.803+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0638887e-d067-4076-b068-108c194bc0c9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.5,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "Many of these words will probably mean something - but not necessarily like that",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.803+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "11230a68-d4f5-4e3d-8e20-43c952658c8c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Mood boards for the future?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.803+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fdd2b14c-2f87-475b-a81e-263b81aba4c0",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Argument from Analogy",
            "slug": "argument-from-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9e3d-7762-a994-72a2f7104e7c",
            "version": 1,
            "bodyDocId": null,
            "description": "Drawing conclusions based on similarities between situations",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-b53dfffa805f",
          "evidence": "Direct historical-parallel framing — 1994 mood board for today's metaverse",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 22,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Contrast Pairs",
            "slug": "contrast-pairs",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9b77-70d3-88b1-f34e26f60860",
            "version": 1,
            "bodyDocId": null,
            "description": "Creating tension through opposites: Before↔After, Problem↔Solution, Pain↔Relief",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "loop",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-b0dab66f257f",
          "evidence": "Two columns: 1994 'Information Superhighway' vs 2021 'Metaverse'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 22,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "e380a666-d8df-4d4b-892c-9d3a49ec8c7b",
          "evidence": "The slide explicitly compares two historical periods using parallel lists of concepts.",
          "framework": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-05-02 17:37:53.803+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 22,
          "frameworkName": "comparison-frame"
        }
      ],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 28,
          "from": 20,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3584a4ab743d",
          "evidence": "Mood boards → VR sales → Roblox vs games TAM → 'doesn't guarantee universal appeal' p28",
          "position": 2,
          "objective": "Stress-test the metaverse thesis against actual traction",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 23,
      "type": "analysis",
      "title": "The chart highlights that despite sales of the Oculus Quest 2, there was no significant surge in search interest during the lockdown period.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 48,
        "componentCount": 7,
        "textChars": 310,
        "nDataPoints": 2,
        "notes": "The chart highlights that despite sales of the Oculus Quest 2, there was no significant surge in search interest during the lockdown period.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:54.365+00",
          "seconds": 3.112,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/23",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-23",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Growing interest, and Oculus Quest 2 sold 10m units in 12 months, but it didn't surge in lockdown",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:07+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926b-f04d4f3082ec",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.55,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Relative search interest, USA",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:54.365+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "753915b2-4a22-4636-bd69-2c910edf71bb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.05,
            "x": 0.05,
            "y": 0.35
          },
          "kind": "legend",
          "text": "VR (grey), Oculus (red)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:54.365+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "20c526a9-913b-43e0-84fe-01da45a0f82d",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Relative search interest",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:07+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926b-f6852267e71d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Google Trends",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:54.365+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4e9b6626-bdca-4478-8cf9-b3669cef8166",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "Growing interest, and Oculus Quest 2 sold 10m units in 12 months, but it didn't surge in lockdown",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:54.365+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "dcd0b837-007a-44e5-a888-9e928670b1e7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.25,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "VR traction so far?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:54.365+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9d2a8de3-924b-4a19-ac80-9354469a5594",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-1b83-7130-9338-bbf90ac1cc9b",
          "evidence": "VR traction chart",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 23,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-bed73c7d49d4",
          "evidence": "Quest 2 sold 10m units in 12 months",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 23,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 28,
          "from": 20,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3584a4ab743d",
          "evidence": "Mood boards → VR sales → Roblox vs games TAM → 'doesn't guarantee universal appeal' p28",
          "position": 2,
          "objective": "Stress-test the metaverse thesis against actual traction",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 24,
      "type": "analysis",
      "title": "The chart highlights the disparity in public interest between Roblox and VR/Oculus.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 35,
        "componentCount": 6,
        "textChars": 173,
        "nDataPoints": 3,
        "notes": "The chart highlights the disparity in public interest between Roblox and VR/Oculus.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:53.929+00",
          "seconds": 2.462,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/24",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-24",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.6,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Relative search interest, USA",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.929+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "327b84ee-3d8a-4bff-aa40-d235d455fff7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.05,
            "x": 0.05,
            "y": 0.35
          },
          "kind": "legend",
          "text": "VR, Oculus, Roblox",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.929+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1de6c8b1-2cf8-46b4-a5a8-1a115424a056",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Relative search interest",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:07+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926c-37a6f5f5e7ea",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Google Trends",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.929+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c721681a-a410-4f2d-9886-20b9417d0e4f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.25,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Small beginnings",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.929+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ec300e86-7dfa-4851-9735-60b500e02152",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.45,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "So far, Roblox is a far bigger story (and Apple is keeping quiet)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.929+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5c71ad08-63dc-4421-a105-fb2c71101713",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 28,
          "from": 20,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3584a4ab743d",
          "evidence": "Mood boards → VR sales → Roblox vs games TAM → 'doesn't guarantee universal appeal' p28",
          "position": 2,
          "objective": "Stress-test the metaverse thesis against actual traction",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 25,
      "type": "setup",
      "title": "The slide uses a simple linear process flow to frame the strategic question about platform longevity.",
      "function": "transition",
      "rawType": "transition",
      "block": null,
      "metadata": {
        "slideType": "transition",
        "slideTypeCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-0693-7766-9f05-887f41f8e41e",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 27,
        "componentCount": 4,
        "textChars": 431,
        "nDataPoints": 0,
        "notes": "The slide uses a simple linear process flow to frame the strategic question about platform longevity.",
        "elementsJson": [
          "process_diagram"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:53.952+00",
          "seconds": 2.47,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/25",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-25",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "A platform for social and for creating games and experiences, not just the latest hit game",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:07+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926c-21d30a0f522c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.6,
            "x": 0.2,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Changing 'games' (Self-expression & social, beyond 1p shooting games) -> Ecosystem (Thousands of apps and devs with real use & revenue) -> Platform value? (Can this last for a decade, instead of fading like hit games?)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": {
              "name": "Process flow",
              "slug": "process",
              "status": "active",
              "canonId": "019de52d-039c-718f-ad3a-efe9c4b3c838",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "process",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.952+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "776a8e30-2668-405d-9567-f3504b6d7ace",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "A platform for social and for creating games and experiences, not just the latest hit game",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.952+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d134ed27-f691-4182-bc4a-b667dd782a5a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Roblox as a model for the future?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.952+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "154fb61a-7b4e-459b-bf6b-e0867c74c370",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-c1a271248201",
          "evidence": "Title hypothesises 'Roblox as a model for the future?'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 25,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        }
      ],
      "frameworks": [
        {
          "matchId": "024bf511-5bb1-42c3-b3f0-191072a3474f",
          "evidence": "The slide uses a linear flow to connect the shift in gaming to ecosystem development and finally to platform value.",
          "framework": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-05-02 17:37:53.952+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 25,
          "frameworkName": "causal-chain"
        }
      ],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 28,
          "from": 20,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3584a4ab743d",
          "evidence": "Mood boards → VR sales → Roblox vs games TAM → 'doesn't guarantee universal appeal' p28",
          "position": 2,
          "objective": "Stress-test the metaverse thesis against actual traction",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 26,
      "type": "analysis",
      "title": "The chart highlights Snap in red to provide a benchmark for the gaming figures.",
      "function": "compare_options",
      "rawType": "market_landscape",
      "block": null,
      "metadata": {
        "slideType": "market_landscape",
        "slideTypeCanon": {
          "name": "Market landscape",
          "slug": "market_landscape",
          "status": "active",
          "canonId": "019de52d-0b6d-75db-a946-9ac362e3afc2",
          "version": 1,
          "description": null
        },
        "function": "compare_options",
        "functionCanon": {
          "name": "Compare options",
          "slug": "compare_options",
          "status": "active",
          "canonId": "019de52d-167f-7038-aebc-70a9d2e0e33b",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 46,
        "componentCount": 6,
        "textChars": 384,
        "nDataPoints": 8,
        "notes": "The chart highlights Snap in red to provide a benchmark for the gaming figures.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_vertical",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:54.755+00",
          "seconds": 3.052,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/26",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-26",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "There are probably 250-350m active 'core gamers' - the same size as Snap and a fraction of the 1bn+ iPhone users",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:11+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926d-49244134b7b3",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.7,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Global daily active users*, 2021 (m)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:54.755+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1e266697-952c-46ea-80cb-f5d370257f05",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Global daily active users: 250-350m",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:11+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926d-4d5d43581840",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.7,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "There are probably 250-350m active 'core gamers' - the same size as Snap and a fraction of the 1bn+ iPhone users",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:54.755+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "902051cb-46f6-4d42-b4e7-79ba5e436183",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Companies\n* Except Consoles and Oculus, as stated",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:54.755+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "feced648-4ff6-40c5-a6aa-52836fc32543",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Games are still relatively small",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:54.755+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "99fce630-9752-4a3d-9db8-376c59398a15",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-c795c8b02e1f",
          "evidence": "'250-350m core gamers — same size as Snap, fraction of 1bn iPhone users'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 26,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 28,
          "from": 20,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3584a4ab743d",
          "evidence": "Mood boards → VR sales → Roblox vs games TAM → 'doesn't guarantee universal appeal' p28",
          "position": 2,
          "objective": "Stress-test the metaverse thesis against actual traction",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 27,
      "type": "resolution",
      "function": "size_opportunity",
      "rawType": "market_sizing",
      "block": null,
      "metadata": {
        "slideType": "market_sizing",
        "slideTypeCanon": {
          "name": "Market sizing",
          "slug": "market_sizing",
          "status": "active",
          "canonId": "019de52d-08c8-756c-8664-733b73a7ee7b",
          "version": 1,
          "description": null
        },
        "function": "size_opportunity",
        "functionCanon": {
          "name": "Size opportunity",
          "slug": "size_opportunity",
          "status": "active",
          "canonId": "019de52d-147b-7568-8828-a74a27697618",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 39,
        "componentCount": 6,
        "textChars": 197,
        "nDataPoints": 27,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_stacked"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:57.392+00",
          "seconds": 5.469,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/27",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-27",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.585,
            "w": 0.705,
            "x": 0.201,
            "y": 0.27
          },
          "kind": "chart",
          "text": "Global games revenue estimates ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.392+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "bbd78e32-510c-4980-af3b-2c89c8e8e3ce",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.075,
            "w": 0.058,
            "x": 0.031,
            "y": 0.352
          },
          "kind": "legend",
          "text": "Mobile\nPC\nConsole",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.392+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "eeb4fb07-308c-4f4a-bdb3-68f7eaf8924e",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Global games revenue: $170bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:07+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926c-4dbf19cd474c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.085,
            "x": 0.201,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: NewZoo",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.392+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d81e2a16-418a-4833-b65b-060c11791f94",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.045,
            "w": 0.598,
            "x": 0.201,
            "y": 0.056
          },
          "kind": "title",
          "text": "Though mobile has changed the games TAM",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.392+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ea61e30d-2b48-4d0c-976f-5c4ca6b1dd38",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.025,
            "w": 0.598,
            "x": 0.201,
            "y": 0.131
          },
          "kind": "title",
          "text": "Popular estimates of market size show dramatic growth in mobile",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.392+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "450983a8-df5f-4254-8627-c65a5d71dc6a",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-ccfe4483b4e3",
          "evidence": "Title 'mobile has changed the games TAM' states the so-what",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 27,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-1b83-7130-9338-c85a7556d52e",
          "evidence": "Market sizing chart $170bn games TAM",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 27,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 28,
          "from": 20,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3584a4ab743d",
          "evidence": "Mood boards → VR sales → Roblox vs games TAM → 'doesn't guarantee universal appeal' p28",
          "position": 2,
          "objective": "Stress-test the metaverse thesis against actual traction",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 28,
      "type": "tension",
      "title": "Uses a visual analogy to contrast technological evolution with market penetration.",
      "function": "frame_problem",
      "rawType": "thesis_headline",
      "block": null,
      "metadata": {
        "slideType": "thesis_headline",
        "slideTypeCanon": {
          "name": "Thesis headline",
          "slug": "thesis_headline",
          "status": "active",
          "canonId": "019de52d-073a-70cb-b9f6-772a597bb5af",
          "version": 1,
          "description": null
        },
        "function": "frame_problem",
        "functionCanon": {
          "name": "Frame problem",
          "slug": "frame_problem",
          "status": "active",
          "canonId": "019de52d-13db-753e-ad70-e9b2d0dab398",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 62,
        "componentCount": 9,
        "textChars": 348,
        "nDataPoints": 1,
        "notes": "Uses a visual analogy to contrast technological evolution with market penetration.",
        "elementsJson": [
          "headline_text",
          "photo",
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:58.478+00",
          "seconds": 6.555,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/28",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-28",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.1,
            "w": 0.2,
            "x": 0.7,
            "y": 0.3
          },
          "kind": "callout",
          "text": "The technology can always get better...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.478+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "597ac0d1-7c84-446e-962c-dca7042fc65a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.2,
            "x": 0.7,
            "y": 0.65
          },
          "kind": "callout",
          "text": "But that doesn't guarantee universal appeal",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.478+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c3c37543-af79-448c-9306-83f805287cbd",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "callout",
          "text": "The technology can always get better... But that doesn't guarantee universal appeal",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:07+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926c-60c87c04e65a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.15,
            "x": 0.2,
            "y": 0.6
          },
          "kind": "image",
          "text": "NES console",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.478+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3a90f772-5385-4c8c-a636-b2820a419105",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.1,
            "x": 0.55,
            "y": 0.55
          },
          "kind": "image",
          "text": "PS5 console",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.478+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9665256e-a8f6-48ec-8cd4-dad162164cfa",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.1,
            "x": 0.55,
            "y": 0.25
          },
          "kind": "image",
          "text": "iPhone",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.478+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a85b92d5-d7c3-4503-8956-a893838f1368",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.1,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "image",
          "text": "Old mobile phone",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.478+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "afadefed-1686-42cb-acec-2fa48f71190e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "Moore's Law took 'mobile internet' to everyone - but only took games consoles to a 200m unit installed base",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.478+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "adb2b2ac-ef62-4ec9-a417-9775cf03b4f0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.5,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "How universal do VR & AR become?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.478+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7672ce4f-a137-4935-bca8-3cecfaaf8ca9",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-d092e88e45fc",
          "evidence": "Callout 'doesn't guarantee universal appeal' is the verdict",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 28,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        }
      ],
      "frameworks": [
        {
          "matchId": "a500b56f-5902-40fc-9163-09038829b8b3",
          "evidence": "Compares mobile phone evolution to game console evolution to predict VR/AR adoption.",
          "framework": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-05-02 17:37:58.478+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 28,
          "frameworkName": "argument-from-analogy"
        }
      ],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 28,
          "from": 20,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3584a4ab743d",
          "evidence": "Mood boards → VR sales → Roblox vs games TAM → 'doesn't guarantee universal appeal' p28",
          "position": 2,
          "objective": "Stress-test the metaverse thesis against actual traction",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 29,
      "type": "setup",
      "function": "transition",
      "rawType": "section_divider",
      "block": null,
      "metadata": {
        "slideType": "section_divider",
        "slideTypeCanon": {
          "name": "Section divider",
          "slug": "section_divider",
          "status": "active",
          "canonId": "019de52d-066a-7402-9554-6ae504999041",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 0,
        "componentCount": 1,
        "textChars": 4,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "big_number"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:53.656+00",
          "seconds": 1.702,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/29",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-29",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.054,
            "w": 0.122,
            "x": 0.203,
            "y": 0.275
          },
          "kind": "title",
          "text": "2030",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:53.656+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "725b6d3b-24e7-49c2-98ac-c4086e122e94",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 34,
          "from": 29,
          "loop": {
            "name": "09_precedent",
            "slug": "09-precedent",
            "status": "active",
            "bestFor": "Risk mitigation, strategy validation, building confidence in new approaches",
            "canonId": "019dd956-695f-7615-8f82-39d919918314",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Precedent Case -> What Happened -> The Parallel -> Applied Learning",
            "description": "Use historical or external examples to validate your approach",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-39cb042f9533",
          "evidence": "Mobile-data-decade lag (p31), AI/VR winters (p32), 1995 web confusion (p33) all cited as parallels",
          "position": 3,
          "objective": "Use mobile/AI/web history to calibrate expectations on tech timing",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 30,
      "type": "setup",
      "title": "The slide uses a simple visual progression of circles to contrast established technologies with emerging ones.",
      "function": "frame_problem",
      "rawType": "key_messages",
      "block": null,
      "metadata": {
        "slideType": "key_messages",
        "slideTypeCanon": {
          "name": "Key messages",
          "slug": "key_messages",
          "status": "active",
          "canonId": "019de52d-0712-703f-89f5-bda6688faf3f",
          "version": 1,
          "description": null
        },
        "function": "frame_problem",
        "functionCanon": {
          "name": "Frame problem",
          "slug": "frame_problem",
          "status": "active",
          "canonId": "019de52d-13db-753e-ad70-e9b2d0dab398",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 38,
        "componentCount": 6,
        "textChars": 347,
        "nDataPoints": 0,
        "notes": "The slide uses a simple visual progression of circles to contrast established technologies with emerging ones.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "other"
        ],
        "confidence": 0.95,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:57.796+00",
          "seconds": 5.512,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/30",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-30",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Tech determinism - for both VR and ‘crypto’ the tech is great, so it must be useful, but how?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:08+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926c-ade1a16f0983",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.2,
            "x": 0.4,
            "y": 0.35
          },
          "kind": "image",
          "text": "But also drones, 3D printing, games consoles...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.796+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "015014a5-39c5-45ff-91bb-f90bfbbc5bd0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.2,
            "x": 0.2,
            "y": 0.35
          },
          "kind": "image",
          "text": "Internet, web, open source, smartphones",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.796+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "40f9c725-5d40-4866-9fb3-3092e5fe9f61",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.2,
            "x": 0.6,
            "y": 0.35
          },
          "kind": "image",
          "text": "And now web3 and metaverse",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.796+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cd7888ef-c62a-41bf-a13b-362f2707b9b1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.13
          },
          "kind": "paragraph",
          "text": "Tech determinism - for both VR and ‘crypto’ the tech is great, so it must be useful, but how?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.796+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f5c493ab-4500-476f-a4c3-ddc2ab11d2aa",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.6,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "“This is amazing - it must be part of the future”",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.796+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4e875e75-7696-4be4-a533-941287ad01ff",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-da88c59e1f95",
          "evidence": "Callout coins 'Tech determinism' as the named fallacy",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 30,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Opening Hooks",
            "slug": "opening-hooks",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-aeb0-77d5-bfbd-9cd9a6be8186",
            "version": 1,
            "bodyDocId": null,
            "description": "Techniques to capture attention: Startling statistic, provocative question, short story, analogy, contrast",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-d648eb5f6fac",
          "evidence": "Quote opens 2030 section: 'This is amazing - it must be part of the future'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 30,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 34,
          "from": 29,
          "loop": {
            "name": "09_precedent",
            "slug": "09-precedent",
            "status": "active",
            "bestFor": "Risk mitigation, strategy validation, building confidence in new approaches",
            "canonId": "019dd956-695f-7615-8f82-39d919918314",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Precedent Case -> What Happened -> The Parallel -> Applied Learning",
            "description": "Use historical or external examples to validate your approach",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-39cb042f9533",
          "evidence": "Mobile-data-decade lag (p31), AI/VR winters (p32), 1995 web confusion (p33) all cited as parallels",
          "position": 3,
          "objective": "Use mobile/AI/web history to calibrate expectations on tech timing",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 31,
      "type": "analysis",
      "title": "The chart illustrates the 'long fuse' of technology adoption.",
      "function": "summarize",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 45,
        "componentCount": 7,
        "textChars": 328,
        "nDataPoints": 0,
        "notes": "The chart illustrates the 'long fuse' of technology adoption.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:55.311+00",
          "seconds": 2.674,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/31",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-31",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Mobile data didn't take off outside Japan until a decade after the dream began",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:08+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926c-87a40de9f973",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.5,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Smartphone unit sales (m)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.311+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "56913dac-eefd-4fcb-b2f2-a304a112e148",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.15,
            "x": 0.05,
            "y": 0.35
          },
          "kind": "legend",
          "text": "Proto-smartphones* (S60, Palm, RIM, Windows Phone); iPhone & Android",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.311+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "057fd4c1-a193-4526-9d62-70c23d4c93d9",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Smartphone unit sales",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:08+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926c-892143c025ad",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.2,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: IDC, Companies",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.311+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c56b8f60-3fde-4ed6-8059-9063bdf4090b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "Mobile data didn't take off outside Japan until a decade after the dream began",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.311+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3c3a372e-8a79-4346-827d-202bc02de9fc",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "The future can take a very long time",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.311+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9d3ef669-8ea6-4add-a188-6e665888d9bf",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Argument from Analogy",
            "slug": "argument-from-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9e3d-7762-a994-72a2f7104e7c",
            "version": 1,
            "bodyDocId": null,
            "description": "Drawing conclusions based on similarities between situations",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-e18a4be8e0a5",
          "evidence": "Mobile data history applied to current tech-vision timing",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 31,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Before-After-Bridge",
            "slug": "before-after-bridge",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-8604-7188-883f-42370288ad05",
            "version": 1,
            "bodyDocId": null,
            "description": "Narrative structure: Paint the before, show the after, explain the bridge",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "f2518d7e-6286-40b8-b65a-73a007101fb4",
          "evidence": "Mobile data didn't take off outside Japan until a decade after the dream began",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:13.922357+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 31,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-dd101a35356a",
          "evidence": "Mobile-data-took-a-decade-after-Japan as concrete precedent",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 31,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 34,
          "from": 29,
          "loop": {
            "name": "09_precedent",
            "slug": "09-precedent",
            "status": "active",
            "bestFor": "Risk mitigation, strategy validation, building confidence in new approaches",
            "canonId": "019dd956-695f-7615-8f82-39d919918314",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Precedent Case -> What Happened -> The Parallel -> Applied Learning",
            "description": "Use historical or external examples to validate your approach",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-39cb042f9533",
          "evidence": "Mobile-data-decade lag (p31), AI/VR winters (p32), 1995 web confusion (p33) all cited as parallels",
          "position": 3,
          "objective": "Use mobile/AI/web history to calibrate expectations on tech timing",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 32,
      "type": "analysis",
      "title": "The chart uses Google Ngram data to visualize the 'AI Winter' and 'VR Winter' phenomena.",
      "function": "establish_context",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 50,
        "componentCount": 7,
        "textChars": 339,
        "nDataPoints": 2,
        "notes": "The chart uses Google Ngram data to visualize the 'AI Winter' and 'VR Winter' phenomena.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:07.74+00",
          "seconds": 14.995,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/32",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-32",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Both AI and VR went through prolonged 'Winters' as the tech lagged behind early enthusiasm",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:08+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926c-c746170ec2c4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.5,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Term frequency in English-language books",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:07.74+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d1892c69-acfb-4411-8ad3-c9ea7891c97a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.1,
            "x": 0.05,
            "y": 0.34
          },
          "kind": "legend",
          "text": "Artificial Intelligence; Virtual Reality",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:07.74+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "933b7cda-ae14-457a-b10e-cecc14794476",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Term frequency",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:08+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926c-c8af72b96a3f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "Both AI and VR went through prolonged 'Winters' as the tech lagged behind early enthusiasm",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:07.74+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8dbb076e-7ef4-40c9-9761-c458ab1f1668",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Google Ngram",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:07.74+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e27a6698-2c5d-41c5-906b-9367d526775a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "And you can have a winter (or two) on the way",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:07.74+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c2e21dae-c7b8-4367-a9be-542b61f2d5d8",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Analytical method",
            "slug": "analytical-method",
            "status": "active",
            "bestFor": null,
            "canonId": "b42c4911-7946-49b5-951c-5f3d23f4e2bd",
            "version": 1,
            "bodyDocId": null,
            "description": "Diagnostic / structuring methods (5-whys, fishbone, issue tree, hypothesis-driven).",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "56282b0f-ea80-40b2-976b-049c23559dd4",
          "evidence": "chart/line: Term frequency in English-language books",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:13.996337+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 32,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-e6a05a88e1db",
          "evidence": "Names AI Winter and VR Winter as historical episodes",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 32,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-e85ffd370410",
          "evidence": "'Winter' metaphor for tech downturn cycles",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 32,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 34,
          "from": 29,
          "loop": {
            "name": "09_precedent",
            "slug": "09-precedent",
            "status": "active",
            "bestFor": "Risk mitigation, strategy validation, building confidence in new approaches",
            "canonId": "019dd956-695f-7615-8f82-39d919918314",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Precedent Case -> What Happened -> The Parallel -> Applied Learning",
            "description": "Use historical or external examples to validate your approach",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-39cb042f9533",
          "evidence": "Mobile-data-decade lag (p31), AI/VR winters (p32), 1995 web confusion (p33) all cited as parallels",
          "position": 3,
          "objective": "Use mobile/AI/web history to calibrate expectations on tech timing",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 33,
      "type": "setup",
      "title": "The slide uses a 1995 TeleGeography map to demonstrate the fragmented state of early networking.",
      "function": "establish_context",
      "rawType": "situation_overview",
      "block": null,
      "metadata": {
        "slideType": "situation_overview",
        "slideTypeCanon": {
          "name": "Situation overview",
          "slug": "situation_overview",
          "status": "active",
          "canonId": "019de52d-0cfe-7769-99aa-9a2fe82a4039",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 47,
        "componentCount": 6,
        "textChars": 585,
        "nDataPoints": 0,
        "notes": "The slide uses a 1995 TeleGeography map to demonstrate the fragmented state of early networking.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "screenshot",
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:58.956+00",
          "seconds": 5.977,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/33",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-33",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Is it just the internet, or will there still be lots of other networks? How will FTP, Gopher, Telnet, WAIS and Web interact? How will the web work? Should the browser be an editor? A server? Should it have images?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:09+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926d-2e2c621dfb6e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.62,
            "w": 0.42,
            "x": 0.2,
            "y": 0.21
          },
          "kind": "image",
          "text": "Figure 5. Network Gateways: A Cyberspace Divided",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.956+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cca6bc3d-1c63-47ef-b1cc-850cbf21a427",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.25,
            "x": 0.68,
            "y": 0.39
          },
          "kind": "list",
          "text": "Is it just the internet, or will there still be lots of other networks? How will FTP, Gopher, Telnet, WAIS and Web interact? How will the web work? Should the browser be an editor? A server? Should it have images?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.956+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3de93f9d-7dff-487b-a7bb-a1dcb654fe9b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.5,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "In 1995, the future shape of the 'internet' still looked very unclear",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.956+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f5159277-92b6-4400-930f-71d7c2d4f3d5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.15,
            "x": 0.2,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: Telegeography",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.956+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f30b7ba3-fc1d-4663-8a33-589d1c9fb3ae",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "No-one knows anything",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.956+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3ded1c15-863a-4a59-81dc-53c16469fa1a",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Audience Definition",
            "slug": "audience-definition",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-7f2a-775d-aeee-ff099bcb7756",
            "version": 1,
            "bodyDocId": null,
            "description": "Six key questions: Who are they? What do they know? What do they believe? What do they care about? What do they fear? What decisions can they make?",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "7854a164-1a13-4751-b4b7-c7d4479dd68d",
          "evidence": "In 1995, the future shape of the 'internet' still looked very unclear",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 21:59:14.072379+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 33,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Authority Bias",
            "slug": "authority-bias",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-c38d-70b9-a284-b2b479763356",
            "version": 1,
            "bodyDocId": null,
            "description": "Expert opinions are weighted more heavily - cite credible sources",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Architect",
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-ef386b88d22a",
          "evidence": "Lists 1990s confusion (FTP, Gopher, WAIS) to show experts didn't know",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 33,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 34,
          "from": 29,
          "loop": {
            "name": "09_precedent",
            "slug": "09-precedent",
            "status": "active",
            "bestFor": "Risk mitigation, strategy validation, building confidence in new approaches",
            "canonId": "019dd956-695f-7615-8f82-39d919918314",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Precedent Case -> What Happened -> The Parallel -> Applied Learning",
            "description": "Use historical or external examples to validate your approach",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-39cb042f9533",
          "evidence": "Mobile-data-decade lag (p31), AI/VR winters (p32), 1995 web confusion (p33) all cited as parallels",
          "position": 3,
          "objective": "Use mobile/AI/web history to calibrate expectations on tech timing",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 34,
      "type": "setup",
      "title": "The slide uses a simple flow diagram to show convergence of two themes into a central core concept.",
      "function": "transition",
      "rawType": "transition",
      "block": null,
      "metadata": {
        "slideType": "transition",
        "slideTypeCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-0693-7766-9f05-887f41f8e41e",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 19,
        "componentCount": 4,
        "textChars": 253,
        "nDataPoints": 0,
        "notes": "The slide uses a simple flow diagram to show convergence of two themes into a central core concept.",
        "elementsJson": [
          "headline_text",
          "process_diagram"
        ],
        "confidence": 0.95,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:55.157+00",
          "seconds": 2.156,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/34",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-34",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "How do we take ownership of digital?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:08+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926c-e58c90c29bf7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.6,
            "x": 0.2,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "New ways to make software, networks and ownership? -> Identify, self-expression, place and self <- New ways to make screens immersive and universal?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": {
              "name": "Process flow",
              "slug": "process",
              "status": "active",
              "canonId": "019de52d-039c-718f-ad3a-efe9c4b3c838",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "process",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.157+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1c526297-309f-4bfe-bf67-b829c7a4f0ff",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.25,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "How do we take ownership of digital?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.157+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b8f862e7-55eb-4e66-a6da-fd8721ea1d07",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.45,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "But some things do seem universal",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.157+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e0117509-5496-4bf0-b08a-d64c63b9e9f2",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Audience frame",
            "slug": "audience-frame",
            "status": "active",
            "bestFor": null,
            "canonId": "2a1eefbd-5be8-4600-898b-49dbfcf73ec8",
            "version": 1,
            "bodyDocId": null,
            "description": "Tools for modelling and segmenting the audience (persona, JTBD, segmentation).",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "70e0c3f0-5767-4c1f-8161-5811b9b07a0f",
          "evidence": "New ways to make software, networks and ownership? -> Identify, self-expression, place and self <- New ways to make screens immersive and universal?",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 21:59:14.148159+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 34,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "optional",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 34,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Surface Observation",
          "beatId": "019dd95a-07a7-7579-bd64-cef58de09441",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Surface Observation",
            "slug": "onion-surface-observation",
            "status": "active",
            "canonId": "019dd9b8-0b39-73c0-b415-6c4cf34cc343",
            "version": 1,
            "description": null
          },
          "evidence": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 34,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a7-7579-bd64-e1cdf8825bc7",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Future section catalogs Web3 + metaverse claims and data",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 34,
          "from": 29,
          "loop": {
            "name": "09_precedent",
            "slug": "09-precedent",
            "status": "active",
            "bestFor": "Risk mitigation, strategy validation, building confidence in new approaches",
            "canonId": "019dd956-695f-7615-8f82-39d919918314",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Precedent Case -> What Happened -> The Parallel -> Applied Learning",
            "description": "Use historical or external examples to validate your approach",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-39cb042f9533",
          "evidence": "Mobile-data-decade lag (p31), AI/VR winters (p32), 1995 web confusion (p33) all cited as parallels",
          "position": 3,
          "objective": "Use mobile/AI/web history to calibrate expectations on tech timing",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 35,
      "type": "setup",
      "function": "transition",
      "rawType": "section_divider",
      "block": null,
      "metadata": {
        "slideType": "section_divider",
        "slideTypeCanon": {
          "name": "Section divider",
          "slug": "section_divider",
          "status": "active",
          "canonId": "019de52d-066a-7402-9554-6ae504999041",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 0,
        "componentCount": 1,
        "textChars": 7,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:55.166+00",
          "seconds": 2.128,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/35",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-35",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.054,
            "w": 0.163,
            "x": 0.202,
            "y": 0.278
          },
          "kind": "title",
          "text": "Present",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.166+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e5d708df-799f-4e4d-bde3-ed48973f61be",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 48,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "First Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "First Layer",
            "slug": "onion-first-layer",
            "status": "active",
            "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
            "version": 1,
            "description": null
          },
          "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 48,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Present section spells out what cloud/SaaS deployment means",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 36,
      "type": "setup",
      "title": "The slide uses a simple binary comparison structure to contrast mature tech trends with speculative future ones.",
      "function": "compare_options",
      "rawType": "comparison_table",
      "block": null,
      "metadata": {
        "slideType": "comparison_table",
        "slideTypeCanon": {
          "name": "Comparison table",
          "slug": "comparison_table",
          "status": "active",
          "canonId": "019de52d-0a06-73f8-8813-fe022fab1de2",
          "version": 1,
          "description": null
        },
        "function": "compare_options",
        "functionCanon": {
          "name": "Compare options",
          "slug": "compare_options",
          "status": "active",
          "canonId": "019de52d-167f-7038-aebc-70a9d2e0e33b",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 26,
        "componentCount": 5,
        "textChars": 269,
        "nDataPoints": 0,
        "notes": "The slide uses a simple binary comparison structure to contrast mature tech trends with speculative future ones.",
        "elementsJson": [
          "headline_text",
          "bullet_list",
          "paragraph"
        ],
        "confidence": 0.95,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:55.872+00",
          "seconds": 2.768,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/36",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-36",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.2,
            "w": 0.25,
            "x": 0.2,
            "y": 0.49
          },
          "kind": "list",
          "text": "SaaS, cloud, machine learning, digital transformation, workflows, automation, image recognition, fintech, voice, video, live streaming...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.872+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ac7c0d7e-bbc1-453e-8998-b3a7dd0728a7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.25,
            "x": 0.2,
            "y": 0.41
          },
          "kind": "paragraph",
          "text": "Deploying all the great ideas from the last decade",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.872+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6a3135cd-6627-4952-84ca-fe2d498b445d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.2,
            "x": 0.6,
            "y": 0.49
          },
          "kind": "paragraph",
          "text": "Web3, Metaverse... and everything else",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.872+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a3e4efef-d529-4a33-ba05-b8be9287db6a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.2,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Deployment",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.872+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0763d8bb-121f-4079-8a7e-ede85ea5ed47",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.3,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "What are companies building today?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.872+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e0bb0419-b9b4-4000-a227-6b7437755063",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 48,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "First Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "First Layer",
            "slug": "onion-first-layer",
            "status": "active",
            "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
            "version": 1,
            "description": null
          },
          "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 48,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Present section spells out what cloud/SaaS deployment means",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 48,
          "from": 36,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3da6cc56a25f",
          "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
          "position": 4,
          "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 37,
      "type": "analysis",
      "title": "The slide uses a simple linear process diagram to illustrate technological shifts.",
      "function": "present_framework",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "present_framework",
        "functionCanon": {
          "name": "Present framework",
          "slug": "present_framework",
          "status": "active",
          "canonId": "019de52d-1403-7667-9100-d2ac6709f750",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 21,
        "componentCount": 4,
        "textChars": 306,
        "nDataPoints": 0,
        "notes": "The slide uses a simple linear process diagram to illustrate technological shifts.",
        "elementsJson": [
          "process_diagram"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:55.822+00",
          "seconds": 2.544,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/37",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-37",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Sounds like a parody of marketing gibberish - but describes a generational change in enterprise tech",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:09+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926d-1a925ad2a448",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.6,
            "x": 0.2,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Mainframes -> Client server, PCs, Oracle, Microsoft -> Cloud, SaaS, machine learning",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": {
              "name": "Process flow",
              "slug": "process",
              "status": "active",
              "canonId": "019de52d-039c-718f-ad3a-efe9c4b3c838",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "process",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.822+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a0df2c8d-9a1b-4da8-9574-7fb68c1cafd4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "Sounds like a parody of marketing gibberish - but describes a generational change in enterprise tech",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.822+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1bf36575-c604-4cec-b8af-d19d2dca580e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Digital transformation",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.822+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ef16a596-b7d7-4f8c-b986-02027a23d920",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Big Idea Formula",
            "slug": "big-idea-formula",
            "status": "active",
            "bestFor": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
            "canonId": "019dd956-7dd1-74d7-9866-ffdef19ecfbf",
            "version": 1,
            "bodyDocId": "c30d7484-69e0-4e21-82cf-20fa0966869e",
            "description": "Nancy Duarte's articulation of how to frame a presentation's central message: the speaker's unique point of view plus what's at stake for the audience, expressed as one complete declarative sentence. The narrative-driven counterpart to Minto's analytical governing thought.",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "94e9224e-9d2b-4a8b-bd29-e8b853ca282a",
          "evidence": "Sounds like a parody of marketing gibberish - but describes a generational change in enterprise tech",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 21:59:14.369232+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 37,
          "whyItWorks": "Solves the topic-not-thesis trap and the stake-less recommendation trap simultaneously. A single declarative sentence with a verb forces the speaker's stance into the room; routing the consequence through the word 'you' translates internal urgency into the audience's currency. The result is short enough to be repeated after the meeting — and that repetition is the persuasion mechanism.",
          "antipattern": "A topic dressed as a thesis ('Sustainability Roadmap 2026'), a stake attached to the speaker rather than the audience, two ideas spliced with 'and', abstract verbs (leverage / unlock / empower) that survive deletion, or writing the Big Idea after the deck is already built so the slides don't actually defend it.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to commit to a single declarative thesis before slide one — a sentence that names the speaker's stance and routes a consequence through the audience's currency. Acts as the filter every slide, anecdote, and chart must ladder up to."
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-f1368d856bff",
          "evidence": "Callout: 'sounds like a parody of marketing gibberish'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 37,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "5d055ecd-0931-465f-9656-47674fbcfe8e",
          "evidence": "Linear progression of technology eras",
          "framework": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-05-02 17:37:55.822+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 37,
          "frameworkName": "timeline"
        }
      ],
      "arcBeats": [
        {
          "to": 48,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "First Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "First Layer",
            "slug": "onion-first-layer",
            "status": "active",
            "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
            "version": 1,
            "description": null
          },
          "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 48,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Present section spells out what cloud/SaaS deployment means",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 48,
          "from": 36,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3da6cc56a25f",
          "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
          "position": 4,
          "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 38,
      "type": "analysis",
      "title": "The chart illustrates that despite growth, cloud spending remains a minority share of total enterprise IT spend.",
      "function": "quantify_impact",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "quantify_impact",
        "functionCanon": {
          "name": "Quantify impact",
          "slug": "quantify_impact",
          "status": "active",
          "canonId": "019de52d-1630-720d-b57d-fa7f76bebd8d",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 51,
        "componentCount": 7,
        "textChars": 325,
        "nDataPoints": 10,
        "notes": "The chart illustrates that despite growth, cloud spending remains a minority share of total enterprise IT spend.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_stacked"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:59.312+00",
          "seconds": 5.655,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/38",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-38",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Only 10-15% of enterprise IT spending has moved to the cloud so far, and 20-30% of workflows",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:13+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926d-798fe513f4df",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Global enterprise IT spending ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.312+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1fe51bbb-dbdb-40e0-93f5-969cdb4e8c7d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.05,
            "x": 0.03,
            "y": 0.35
          },
          "kind": "legend",
          "text": "On-prem\nCloud",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.312+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7a402976-e4b5-4a77-bb2d-da6d0c80cc5f",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Global enterprise IT spending: 10-15%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:13+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926d-7dedd4e74a6c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Gartner",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.312+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "eaf66e9c-7f95-4202-93e3-638992d497d8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "Only 10-15% of enterprise IT spending has moved to the cloud so far, and 20-30% of workflows",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.312+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "063fba21-100f-43a8-8581-7290a9ed6a11",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "The move to cloud is still just beginning",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.312+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "410fca68-944e-4bbc-8ee6-5b7c0e9a4e0c",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-fbf55a38e459",
          "evidence": "Title 'cloud is still just beginning' is the verdict",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 38,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "bbe8e9c3-77da-4e90-86be-3d1a041ebe10",
          "evidence": "chart/bar-stacked: Global enterprise IT spending ($bn)",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:14.442017+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 38,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9338-f7063af9b26e",
          "evidence": "'Only 10-15% of enterprise IT' is concrete diagnostic",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 38,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 48,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "First Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "First Layer",
            "slug": "onion-first-layer",
            "status": "active",
            "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
            "version": 1,
            "description": null
          },
          "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 48,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Present section spells out what cloud/SaaS deployment means",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 48,
          "from": 36,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3da6cc56a25f",
          "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
          "position": 4,
          "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 39,
      "type": "analysis",
      "title": "The chart illustrates the persistence of legacy technology despite industry shifts.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 43,
        "componentCount": 6,
        "textChars": 291,
        "nDataPoints": 26,
        "notes": "The chart illustrates the persistence of legacy technology despite industry shifts.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:55.937+00",
          "seconds": 2.208,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/39",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-39",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Mainframes are still out there, decades after the rest of tech moved on to bigger things",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:09+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926d-03a8b8d5f81a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.5,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "IBM Mainframe installed computing capacity (million MIPS)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.937+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a692939d-f5b6-4b80-bd60-57cc92cfffbe",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "million MIPS",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:09+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926d-0511b8ddf8af",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: IBM",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.937+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6e89f10e-0b73-4a1d-9615-a25427bd232f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "Mainframes are still out there, decades after the rest of tech moved on to bigger things",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.937+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c469ac20-abd4-421b-801a-26125a5f1111",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.45,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Old paradigms have a long half-life",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:55.937+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ec6b2cc0-dd70-40a1-ad6f-8771fae6525c",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9338-fc36514a8e66",
          "evidence": "'Old paradigms have a long half-life' states pattern",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 39,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Data Story Arc",
            "slug": "data-story-arc",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Context → Conflict → Insight → Implication structure for data narratives",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "b03d5e63-1fb8-4fde-95e5-cd084deb4d37",
          "evidence": "Mainframes -> Client server, PCs, Oracle, Microsoft -> Cloud, SaaS, machine learning",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 21:59:14.516119+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 39,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-0385759766be",
          "evidence": "'Half-life' radioactive metaphor for legacy tech",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 39,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 48,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "First Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "First Layer",
            "slug": "onion-first-layer",
            "status": "active",
            "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
            "version": 1,
            "description": null
          },
          "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 48,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Present section spells out what cloud/SaaS deployment means",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 48,
          "from": 36,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3da6cc56a25f",
          "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
          "position": 4,
          "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 40,
      "type": "analysis",
      "title": "The chart highlights the massive scale of investment in cloud infrastructure by the four major hyperscalers.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 56,
        "componentCount": 7,
        "textChars": 374,
        "nDataPoints": 48,
        "notes": "The chart highlights the massive scale of investment in cloud infrastructure by the four major hyperscalers.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_stacked",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:59.081+00",
          "seconds": 5.283,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/40",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-40",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Alphabet and Microsoft alone are spending over $40bn this year on cloud infrastructure",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926d-ec832809a123",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.7,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Annual capex ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.081+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "bba26bac-9764-4478-a706-6d426e144c83",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.1,
            "x": 0.03,
            "y": 0.35
          },
          "kind": "legend",
          "text": "Meta, Amazon*, Microsoft, Alphabet",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.081+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "948f2537-1a04-4494-81a4-6a35f4600f37",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Annual capex: $40bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926d-f3a0f4dda29c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Companies; * Includes both data centres and delivery fulfilment. Cash capex and lease obligations",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.081+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e2c637f4-35df-476b-a917-5b7f84e4fc4e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "Alphabet and Microsoft alone are spending over $40bn this year on cloud infrastructure",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.081+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6fb5230f-f689-49e8-a656-c88de59188e9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.35,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Rise of the 'hyperscalers'",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.081+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "df9c54f2-0318-439a-94cb-283caf350541",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-0ae0e9b3904b",
          "evidence": "Title coins 'hyperscalers' label",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 40,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-07706b54f720",
          "evidence": "'Alphabet + Microsoft spending over $40bn this year on cloud'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 40,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 48,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "First Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "First Layer",
            "slug": "onion-first-layer",
            "status": "active",
            "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
            "version": 1,
            "description": null
          },
          "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 48,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Present section spells out what cloud/SaaS deployment means",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 48,
          "from": 36,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3da6cc56a25f",
          "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
          "position": 4,
          "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 41,
      "type": "analysis",
      "function": "establish_context",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 27,
        "componentCount": 4,
        "textChars": 422,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "process_diagram"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:56.019+00",
          "seconds": 2.209,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/41",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-41",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "SaaS / cloud deployment model plus expansion of industry and capabilities means a step change in the opportunity",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-27c40b45209b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.6,
            "x": 0.2,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Mainframes (IBM supplies you with a hardware/software system) -> Client server (Dozens of applications in your data centre) -> SaaS (Hundreds of applications (that you know about))",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": {
              "name": "Process flow",
              "slug": "process",
              "status": "active",
              "canonId": "019de52d-039c-718f-ad3a-efe9c4b3c838",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "process",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.019+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9d9dde52-b710-4314-a530-c411d87f9ce8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.7,
            "x": 0.2,
            "y": 0.13
          },
          "kind": "paragraph",
          "text": "SaaS / cloud deployment model plus expansion of industry and capabilities means a step change in the opportunity",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.019+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "73fb7f10-adde-481d-94f8-4b8ae43f61d1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.25,
            "x": 0.2,
            "y": 0.06
          },
          "kind": "title",
          "text": "How much software?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.019+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b7416b12-aa9e-4a20-aa7a-57e919f9eb32",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-0d48009da8a1",
          "evidence": "Callout 'step change in the opportunity' is the so-what",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 41,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Three-Act Structure",
            "slug": "three-act-structure",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-8812-7796-9105-e7bc0e405681",
            "version": 1,
            "bodyDocId": null,
            "description": "Setup, Confrontation, Resolution - classic dramatic structure",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "f0dba034-eb73-4128-93d3-f3109df0030d",
          "evidence": "Mainframes (IBM supplies you with a hardware/software system) -> Client server (Dozens of applications in your data centre) -> SaaS (Hundreds of applications (that you know about))",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:14.707946+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 41,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 48,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "First Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "First Layer",
            "slug": "onion-first-layer",
            "status": "active",
            "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
            "version": 1,
            "description": null
          },
          "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 48,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Present section spells out what cloud/SaaS deployment means",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 48,
          "from": 36,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3da6cc56a25f",
          "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
          "position": 4,
          "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 42,
      "type": "analysis",
      "title": "The chart illustrates a consistent upward trend in SaaS adoption across all listed industries over the four-year period.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 42,
        "componentCount": 6,
        "textChars": 257,
        "nDataPoints": 40,
        "notes": "The chart illustrates a consistent upward trend in SaaS adoption across all listed industries over the four-year period.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "scatter_plot",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:56.354+00",
          "seconds": 2.536,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/42",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-42",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.6,
            "w": 0.7,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Average number of SaaS applications per Okta customer, by industry",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Dot plot",
              "slug": "dot",
              "status": "active",
              "canonId": "019de52d-0235-738b-bd2b-78f8e24d7cb0",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "dot",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.354+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "631d5a13-80e7-4402-8584-99f565e03cd4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.05,
            "x": 0.05,
            "y": 0.35
          },
          "kind": "legend",
          "text": "2020, 2019, 2018, 2017",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.354+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6f2c6637-57db-484b-b699-fbb6500dec33",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Average number of SaaS applications",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926d-95110cb2ef39",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "SaaS operating model has meant a structural change in the amount of software companies can use",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.354+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "91156c70-4bb0-483c-9c43-a2e019412793",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Okta",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.354+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5b69d8ea-c2fd-4a09-8c07-8875ebb6275f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "SaaS means far more software",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.354+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "232fde73-f067-43ba-ae62-69f866e0cde6",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Data Story Arc",
            "slug": "data-story-arc",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Context → Conflict → Insight → Implication structure for data narratives",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "6222799a-542f-4b3f-8432-cef1197e645c",
          "evidence": "Average number of SaaS applications per Okta customer, by industry",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:14.794457+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 42,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 48,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "First Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "First Layer",
            "slug": "onion-first-layer",
            "status": "active",
            "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
            "version": 1,
            "description": null
          },
          "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 48,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Present section spells out what cloud/SaaS deployment means",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 48,
          "from": 36,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3da6cc56a25f",
          "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
          "position": 4,
          "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 43,
      "type": "analysis",
      "title": "The chart uses a dot plot to compare three years of data across ten functional departments.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 55,
        "componentCount": 7,
        "textChars": 371,
        "nDataPoints": 30,
        "notes": "The chart uses a dot plot to compare three years of data across ten functional departments.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "scatter_plot",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:56.488+00",
          "seconds": 2.63,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/43",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-43",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "SaaS operating model has meant a structural change in the amount of software companies can use",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-bdf1a8c375d5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Average number of SaaS applications per team",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Dot plot",
              "slug": "dot",
              "status": "active",
              "canonId": "019de52d-0235-738b-bd2b-78f8e24d7cb0",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "dot",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.488+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "66db9e6f-71dc-43a3-b57b-47f896746ba4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.05,
            "x": 0.05,
            "y": 0.35
          },
          "kind": "legend",
          "text": "2021, 2020, 2019",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.488+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8ae6ac14-86ac-4348-be6e-fc7c37a4d7a7",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Average number of SaaS applications",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-c20a2b7ad23f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "SaaS operating model has meant a structural change in the amount of software companies can use",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.488+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "30f5a931-c293-47ea-9774-4f23dc5e4c5a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Productiv. Data includes both SaaS SSO and proprietary analysis",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.488+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "42fda7dd-d4ef-4ccd-b16c-ea738c25eb4f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Even within teams",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.488+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "963f5414-8f98-47d8-9f7e-75788955d7dd",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-11199838223e",
          "evidence": "Callout 'structural change in the amount of software companies can use'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 43,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Data Story Arc",
            "slug": "data-story-arc",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Context → Conflict → Insight → Implication structure for data narratives",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "9f025cdf-50f3-4f49-9ba4-975dff757dbc",
          "evidence": "Average number of SaaS applications per team",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:14.92775+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 43,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 48,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "First Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "First Layer",
            "slug": "onion-first-layer",
            "status": "active",
            "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
            "version": 1,
            "description": null
          },
          "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 48,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Present section spells out what cloud/SaaS deployment means",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 48,
          "from": 36,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3da6cc56a25f",
          "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
          "position": 4,
          "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 44,
      "type": "setup",
      "title": "The slide uses logos (Excel, Google Sheets, Figma) to represent a progression of software utility.",
      "function": "present_solution",
      "rawType": "thesis_headline",
      "block": null,
      "metadata": {
        "slideType": "thesis_headline",
        "slideTypeCanon": {
          "name": "Thesis headline",
          "slug": "thesis_headline",
          "status": "active",
          "canonId": "019de52d-073a-70cb-b9f6-772a597bb5af",
          "version": 1,
          "description": null
        },
        "function": "present_solution",
        "functionCanon": {
          "name": "Present solution",
          "slug": "present_solution",
          "status": "active",
          "canonId": "019de52d-15b8-71da-bd23-2b767850cbce",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 32,
        "componentCount": 6,
        "textChars": 229,
        "nDataPoints": 0,
        "notes": "The slide uses logos (Excel, Google Sheets, Figma) to represent a progression of software utility.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "process_diagram"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:00.369+00",
          "seconds": 6.413,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/44",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-44",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Don't put your spreadsheet on the web - find a better way to do the job",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926d-b3174753686e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.17,
            "x": 0.2,
            "y": 0.4
          },
          "kind": "image",
          "text": "Excel logo",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo",
              "slug": "logo",
              "status": "active",
              "canonId": "019de52c-fdaf-743d-94c4-d7c6a0e55302",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.369+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5cb0f019-4086-49ca-a303-76704a7524cf",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.12,
            "x": 0.51,
            "y": 0.55
          },
          "kind": "image",
          "text": "Google Sheets logo",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo",
              "slug": "logo",
              "status": "active",
              "canonId": "019de52c-fdaf-743d-94c4-d7c6a0e55302",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.369+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "79ec5e65-91c4-45aa-acd5-09d73448b578",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.28,
            "w": 0.1,
            "x": 0.77,
            "y": 0.38
          },
          "kind": "image",
          "text": "Figma logo",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo",
              "slug": "logo",
              "status": "active",
              "canonId": "019de52c-fdaf-743d-94c4-d7c6a0e55302",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.369+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c0a1c226-74a9-4457-ad64-1ad04414adc9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.5,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "Don't put your spreadsheet on the web - find a better way to do the job",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.369+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "27d6f336-f0d5-4175-9d51-a54b2c488f76",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "The cloud means workflows, not better file shares",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.369+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cf5fdb66-9164-4fcd-aa14-1b0c3efa5209",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-19f53bbba79a",
          "evidence": "Title 'cloud means workflows, not better file shares'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 44,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Aesthetic-Usability Effect",
            "slug": "aesthetic-usability-effect",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-c150-75ee-9212-183da76c56da",
            "version": 1,
            "bodyDocId": null,
            "description": "Attractive designs are perceived as easier to use and more trustworthy",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "4cf0f158-b98e-4a1f-9896-86275c76ea01",
          "evidence": "image/logo: Google Sheets logo, image/logo: Excel logo, image/logo: Figma logo",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:59:15.002496+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 44,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-173ec44af22a",
          "evidence": "'Don't put your spreadsheet on the web — find a better way'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 44,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 48,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "First Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "First Layer",
            "slug": "onion-first-layer",
            "status": "active",
            "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
            "version": 1,
            "description": null
          },
          "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 48,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Present section spells out what cloud/SaaS deployment means",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 48,
          "from": 36,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3da6cc56a25f",
          "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
          "position": 4,
          "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 45,
      "type": "evidence",
      "title": "The slide highlights the product's value proposition of consolidating email, Slack, and file sharing into a single platform with invisible machine learning.",
      "function": "illustrate_case",
      "rawType": "client_example",
      "block": null,
      "metadata": {
        "slideType": "client_example",
        "slideTypeCanon": {
          "name": "Client example",
          "slug": "client_example",
          "status": "active",
          "canonId": "019de52d-0c87-77cb-9867-613ae22e95ac",
          "version": 1,
          "description": null
        },
        "function": "illustrate_case",
        "functionCanon": {
          "name": "Illustrate case",
          "slug": "illustrate_case",
          "status": "active",
          "canonId": "019de52d-13b4-772c-bb73-1873612a7463",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 26,
        "componentCount": 5,
        "textChars": 276,
        "nDataPoints": 0,
        "notes": "The slide highlights the product's value proposition of consolidating email, Slack, and file sharing into a single platform with invisible machine learning.",
        "elementsJson": [
          "headline_text",
          "bullet_list",
          "screenshot"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:59.047+00",
          "seconds": 4.915,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/45",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-45",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Replaces email, Slack, file share, Google sheets and lots more email",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-6b6e35036d6a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.85,
            "w": 0.4,
            "x": 0.55,
            "y": 0.05
          },
          "kind": "image",
          "text": "Frame.io interface on tablet and phone",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Screenshot",
              "slug": "screenshot",
              "status": "active",
              "canonId": "019de52c-fd87-7509-8391-3d79fb339379",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "screenshot",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.047+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "23c12113-c94f-428c-ab0a-f9a5883235e2",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.4,
            "x": 0.045,
            "y": 0.34
          },
          "kind": "paragraph",
          "text": "Workflow for professional video\n\nReplaces email, Slack, file share, Google sheets and lots more email\n\nMachine learning everywhere - but invisible",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.047+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "073bc7af-624b-4cda-ba0d-74bf2b7a23f0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.045,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: Frame.io",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.047+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f15c9847-230d-425e-bb59-60856e07ca25",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.16,
            "x": 0.045,
            "y": 0.245
          },
          "kind": "title",
          "text": "Frame.io",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.047+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ec0bebd1-9e64-49d5-9570-caf976b21b31",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Storytelling Effect",
            "slug": "storytelling-effect",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-981b-74f9-9096-5c8df03dab5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Stories are remembered up to 22x better than facts alone",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-1e417632128c",
          "evidence": "Frame.io named as concrete client example replacing email/Slack/sheets",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 45,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Aha! Moment",
            "slug": "aha-moment",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-a5b5-7763-820e-b299c5f27a32",
            "version": 1,
            "bodyDocId": null,
            "description": "The moment when the audience realizes the value - design for insight revelation",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "a728bbb1-ffb7-46ec-a736-94c56018a8f5",
          "evidence": "Replaces email, Slack, file share, Google sheets and lots more email",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:59:15.083923+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 45,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 48,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "First Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "First Layer",
            "slug": "onion-first-layer",
            "status": "active",
            "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
            "version": 1,
            "description": null
          },
          "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 48,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Present section spells out what cloud/SaaS deployment means",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 48,
          "from": 36,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3da6cc56a25f",
          "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
          "position": 4,
          "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 46,
      "type": "evidence",
      "title": "The slide uses a screenshot of the Frame.io interface to demonstrate the 'Google Docs for video' concept.",
      "function": "illustrate_case",
      "rawType": "client_example",
      "block": null,
      "metadata": {
        "slideType": "client_example",
        "slideTypeCanon": {
          "name": "Client example",
          "slug": "client_example",
          "status": "active",
          "canonId": "019de52d-0c87-77cb-9867-613ae22e95ac",
          "version": 1,
          "description": null
        },
        "function": "illustrate_case",
        "functionCanon": {
          "name": "Illustrate case",
          "slug": "illustrate_case",
          "status": "active",
          "canonId": "019de52d-13b4-772c-bb73-1873612a7463",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 25,
        "componentCount": 5,
        "textChars": 255,
        "nDataPoints": 0,
        "notes": "The slide uses a screenshot of the Frame.io interface to demonstrate the 'Google Docs for video' concept.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "screenshot"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:59.415+00",
          "seconds": 5.248,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/46",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-46",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "15-year-old concept ('Google Docs for video!') but the tech and the market are finally ready",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-54162ac47fdc",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.858,
            "w": 0.413,
            "x": 0.557,
            "y": 0.078
          },
          "kind": "image",
          "text": "Frame.io interface screenshot",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Screenshot",
              "slug": "screenshot",
              "status": "active",
              "canonId": "019de52c-fd87-7509-8391-3d79fb339379",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "screenshot",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.415+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "95ad1c9a-5bdc-44e7-90d4-fc783b028e70",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.41,
            "x": 0.045,
            "y": 0.335
          },
          "kind": "paragraph",
          "text": "15-year-old concept ('Google Docs for video!') but the tech and the market are finally ready",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.415+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fda34857-8c3a-4481-92d4-c55de4de05f1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.045,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: Frame.io",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.415+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "45500afa-0ad0-40d5-93cf-4618d44de266",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.41,
            "x": 0.045,
            "y": 0.245
          },
          "kind": "title",
          "text": "Frame.io - welcome to 2005",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.415+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "65513932-39ff-4d3b-afe7-c5d903edfad8",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Callback",
            "slug": "callback",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-a3a9-708f-b4a3-d3da2181c576",
            "version": 1,
            "bodyDocId": null,
            "description": "Referencing earlier content for payoff and cohesion",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "loop",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-233511881a68",
          "evidence": "'Welcome to 2005' callback foreshadows the 'Welcome to 2007' on p59",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 46,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Anadiplosis",
            "slug": "anadiplosis",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-a0a5-75f9-a98c-7b7d8ee377a1",
            "version": 1,
            "bodyDocId": null,
            "description": "Ending one clause with a word that begins the next",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "19a9cbfa-236c-4323-ae29-29213363f6f1",
          "evidence": "15-year-old concept ('Google Docs for video!') but the tech and the market are finally ready",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:15.158053+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 46,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-25c985c7a8c7",
          "evidence": "'15-year-old concept (Google Docs for video)'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 46,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 48,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "First Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "First Layer",
            "slug": "onion-first-layer",
            "status": "active",
            "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
            "version": 1,
            "description": null
          },
          "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 48,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Present section spells out what cloud/SaaS deployment means",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 48,
          "from": 36,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3da6cc56a25f",
          "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
          "position": 4,
          "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 47,
      "type": "evidence",
      "title": "The slide uses a before-and-after comparison to illustrate the impact of digital transformation on operational efficiency.",
      "function": "illustrate_case",
      "rawType": "case_study",
      "block": null,
      "metadata": {
        "slideType": "case_study",
        "slideTypeCanon": {
          "name": "Case study",
          "slug": "case_study",
          "status": "active",
          "canonId": "019de52d-0b95-7344-8090-926f3b8e92c8",
          "version": 1,
          "description": null
        },
        "function": "illustrate_case",
        "functionCanon": {
          "name": "Illustrate case",
          "slug": "illustrate_case",
          "status": "active",
          "canonId": "019de52d-13b4-772c-bb73-1873612a7463",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 76,
        "componentCount": 11,
        "textChars": 533,
        "nDataPoints": 7,
        "notes": "The slide uses a before-and-after comparison to illustrate the impact of digital transformation on operational efficiency.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "process_diagram",
          "bullet_list",
          "icon_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:58.888+00",
          "seconds": 4.601,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/47",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-47",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Before: > 1,000 FTEs managed supplier payments worldwide; Now: 400 FTEs in Shared Services; Target: <100 next year.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-7efb7fefab84",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.4,
            "w": 0.5,
            "x": 0.22,
            "y": 0.4
          },
          "kind": "diagram",
          "text": "Comparison of Traditional approach vs Digital process for invoice handling",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": {
              "name": "Process flow",
              "slug": "process",
              "status": "active",
              "canonId": "019de52d-039c-718f-ad3a-efe9c4b3c838",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "process",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.888+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a7ac16b3-eb2f-4448-95e5-0279b8f7bf8d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.2,
            "x": 0.7,
            "y": 0.45
          },
          "kind": "list",
          "text": "Before: > 1,000 FTEs managed supplier payments worldwide; Now: 400 FTEs in Shared Services; Target: <100 next year",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.888+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2ecb69ff-5d01-4586-99f8-b92c821d1ee2",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.15,
            "x": 0.28,
            "y": 0.31
          },
          "kind": "metric",
          "text": "2.6m invoices a year",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.888+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "21038731-7789-4ebe-9021-48279510933d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.15,
            "x": 0.48,
            "y": 0.31
          },
          "kind": "metric",
          "text": "€38bn payments",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.888+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "859e6a62-c946-41f1-8df8-f5b1209d0533",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.15,
            "x": 0.68,
            "y": 0.31
          },
          "kind": "metric",
          "text": "40K queries",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.888+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ce86b6ac-60b5-47f6-80ca-575c82863ac7",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "FTE count: 1,000",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-8366c3ad34cb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "Vodafone had 2.6m invoices, 40k queries & 1k payments FTEs - how would you change that?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.888+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "aacebfbc-deb8-4184-b828-7c9b7e8e133a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Vodafone (2019)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.888+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6fb5a9e8-12ab-4588-bdf5-a1c632a15524",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.4,
            "x": 0.22,
            "y": 0.24
          },
          "kind": "title",
          "text": "Applying digital: Purchase to Pay process",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.888+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "92e45e80-5bda-4fcd-acf6-aa80966265eb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Remaking companies",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.888+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "bb05b249-b271-4639-bc59-9423dc03959d",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Before-After-Bridge",
            "slug": "before-after-bridge",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-8604-7188-883f-42370288ad05",
            "version": 1,
            "bodyDocId": null,
            "description": "Narrative structure: Paint the before, show the after, explain the bridge",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-292f2a75e7f1",
          "evidence": "Callout: 'Before >1,000 FTEs / Now: 400 / Target: <100'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 47,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Before-After-Bridge",
            "slug": "before-after-bridge",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-8604-7188-883f-42370288ad05",
            "version": 1,
            "bodyDocId": null,
            "description": "Narrative structure: Paint the before, show the after, explain the bridge",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "f0fbd3ec-9d86-4fb1-b8cc-9c406973e397",
          "evidence": "Before: > 1,000 FTEs managed supplier payments worldwide; Now: 400 FTEs in Shared Services; Target: <100 next year.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:59:15.233531+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 47,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-2fcd46af08df",
          "evidence": "Specific FTE counts at three time points",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 47,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "9bfec0f9-8eeb-4e60-8128-5a86daa11e86",
          "evidence": "The slide explicitly contrasts the 'Traditional approach' with the 'Digital' approach to show improvement.",
          "framework": null,
          "confidence": 1,
          "extraction": {
            "at": "2026-05-02 17:37:58.888+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 47,
          "frameworkName": "before-after-framing"
        }
      ],
      "arcBeats": [
        {
          "to": 48,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "First Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "First Layer",
            "slug": "onion-first-layer",
            "status": "active",
            "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
            "version": 1,
            "description": null
          },
          "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 48,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Present section spells out what cloud/SaaS deployment means",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 48,
          "from": 36,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3da6cc56a25f",
          "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
          "position": 4,
          "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 48,
      "type": "setup",
      "function": "summarize",
      "rawType": "key_messages",
      "block": null,
      "metadata": {
        "slideType": "key_messages",
        "slideTypeCanon": {
          "name": "Key messages",
          "slug": "key_messages",
          "status": "active",
          "canonId": "019de52d-0712-703f-89f5-bda6688faf3f",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 38,
        "componentCount": 6,
        "textChars": 346,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "other"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:56.87+00",
          "seconds": 2.567,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/48",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-48",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Thousands more companies deploying everything we learned in the last decade, in ever more places",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-05a1a58d1975",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.2,
            "x": 0.2,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Platforms: SaaS, cloud, mobile",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "other",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.87+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "890c720a-f457-4d44-9729-b0f46792e08a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.2,
            "x": 0.4,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Building blocks: Networks, marketplaces, workflows, machine learning",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "other",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.87+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9e4d203a-66af-4fd5-9661-115ee3ed72ba",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.2,
            "x": 0.6,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Creation: So many more companies to build",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "other",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.87+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c25f3086-b2eb-4096-b568-9ead3247fae4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "Thousands more companies deploying everything we learned in the last decade, in ever more places",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.87+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9eb7889e-82dd-483a-8228-7283723a1ce2",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.25,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Mass deployment",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.87+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "12d00d06-4b6c-4bdb-b086-017fb5f7337e",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-329488434734",
          "evidence": "Title 'Mass deployment' synthesises the present-section loop",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 48,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Flywheel",
            "slug": "flywheel",
            "status": "active",
            "bestFor": null,
            "canonId": "019de52d-1ad8-75ab-9027-a40365590152",
            "version": 1,
            "bodyDocId": null,
            "description": null,
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "34fe6c64-0d38-4f50-8b65-3bfe48570a99",
          "evidence": "Thousands more companies deploying everything we learned in the last decade, in ever more places",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:15.306764+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 48,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 48,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "First Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d00103676543",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "First Layer",
            "slug": "onion-first-layer",
            "status": "active",
            "canonId": "019dd9b8-0bd1-75b2-9773-18ea7796621c",
            "version": 1,
            "description": null
          },
          "evidence": "Present section reveals quieter reality: cloud is only 10-15% deployed",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 48,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 35,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a7-7579-bd64-e55621e10f14",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Present section spells out what cloud/SaaS deployment means",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 48,
          "from": 36,
          "loop": {
            "name": "03_aha_moment",
            "slug": "03-aha-moment",
            "status": "active",
            "bestFor": "Data-heavy sections, research findings, analytical arguments",
            "canonId": "019dd956-66f4-7668-ab25-cec9c996c0bc",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Problem/Question -> What the Data Shows -> The Insight",
            "description": "Establish a tension, present data, then deliver the insight that changes everything",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-3da6cc56a25f",
          "evidence": "Question 'how much software?' → data on hyperscalers/SaaS density → insight 'Mass deployment' on p48",
          "position": 4,
          "objective": "Reveal cloud + SaaS as a step-change in software opportunity",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 49,
      "type": "setup",
      "function": "transition",
      "rawType": "section_divider",
      "block": null,
      "metadata": {
        "slideType": "section_divider",
        "slideTypeCanon": {
          "name": "Section divider",
          "slug": "section_divider",
          "status": "active",
          "canonId": "019de52d-066a-7402-9554-6ae504999041",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 0,
        "componentCount": 1,
        "textChars": 4,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:56.957+00",
          "seconds": 2.547,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/49",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-49",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.054,
            "w": 0.096,
            "x": 0.202,
            "y": 0.27
          },
          "kind": "title",
          "text": "Past",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:56.957+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "bba71c74-c080-402e-abc0-3167c78f33e7",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 50,
      "type": "setup",
      "function": "establish_context",
      "rawType": "thesis_headline",
      "block": null,
      "metadata": {
        "slideType": "thesis_headline",
        "slideTypeCanon": {
          "name": "Thesis headline",
          "slug": "thesis_headline",
          "status": "active",
          "canonId": "019de52d-073a-70cb-b9f6-772a597bb5af",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 3,
        "componentCount": 1,
        "textChars": 84,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:58.576+00",
          "seconds": 3.887,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/50",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-50",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.15,
            "w": 0.6,
            "x": 0.2,
            "y": 0.29
          },
          "kind": "title",
          "text": "Everything the internet did to music or newspapers is now happening to everyone else",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.576+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "633e4492-9fd9-4fd6-8917-b6de3e15cd97",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-3630a96fe8b5",
          "evidence": "Section header itself is the thesis: 'Everything the internet did to music or newspapers is now happening to everyone else'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 90,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 50,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 58,
          "from": 50,
          "loop": {
            "name": "13_domino_effect",
            "slug": "13-domino-effect",
            "status": "active",
            "bestFor": "Strategy roadmaps, showing ROI of a specific feature, causal analysis",
            "canonId": "019dd956-6b0a-74a4-9ebb-77e5dc8152aa",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Trigger Action -> First Reaction -> Second Reaction -> Final Impact",
            "description": "Demonstrate how a single small strategic move triggers a cascade of positive outcomes",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-414f2b9433e3",
          "evidence": "Trigger 'atoms stop mattering' (p51) → unbundling diagram (p53) → TV penetration drop → new entrants outspending incumbents",
          "position": 5,
          "objective": "Show the same internet trigger toppling music, newspapers, then TV",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 51,
      "type": "analysis",
      "title": "The chart illustrates the impact of digital disruption on physical-goods-based industries.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 52,
        "componentCount": 7,
        "textChars": 367,
        "nDataPoints": 3,
        "notes": "The chart illustrates the impact of digital disruption on physical-goods-based industries.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:59.911+00",
          "seconds": 5.164,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/51",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-51",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "As the internet removes physical barriers to entry, one industry after another is disrupted",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-dd1a104985ee",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.565,
            "w": 0.799,
            "x": 0.201,
            "y": 0.268
          },
          "kind": "chart",
          "text": "Decline from peak, USA (indexed)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.911+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2808f3de-df04-4c36-a774-5005e3d5a9ce",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.15,
            "x": 0.026,
            "y": 0.345
          },
          "kind": "legend",
          "text": "Pay TV subs\nBook store revenue\nNewspaper ad revenue",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.911+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e607d14e-f879-430e-b655-49835a98e0f6",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Indexed revenue/subscription decline",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-e265004b70aa",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.025,
            "w": 0.598,
            "x": 0.201,
            "y": 0.128
          },
          "kind": "paragraph",
          "text": "As the internet removes physical barriers to entry, one industry after another is disrupted",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.911+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "62608dd0-59cd-4fbb-93cb-1fad48b2949f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.2,
            "x": 0.201,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: BLS, US Census, Companies",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.911+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2a462faf-72a7-4983-87d1-ad65684c7803",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.045,
            "w": 0.455,
            "x": 0.201,
            "y": 0.056
          },
          "kind": "title",
          "text": "When do the atoms stop mattering?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.911+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5e4537ca-2308-4258-a434-981c46d28271",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-3f0f1bc06872",
          "evidence": "Callout 'one industry after another is disrupted' is the so-what",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 51,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Data Story Arc",
            "slug": "data-story-arc",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Context → Conflict → Insight → Implication structure for data narratives",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "2c8224d6-fc27-4bd2-ac19-14b4b5890218",
          "evidence": "Indexed revenue/subscription decline",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:15.491215+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 51,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-3b9ed4820eed",
          "evidence": "'When do the atoms stop mattering?' physical-vs-digital metaphor",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 51,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 58,
          "from": 50,
          "loop": {
            "name": "13_domino_effect",
            "slug": "13-domino-effect",
            "status": "active",
            "bestFor": "Strategy roadmaps, showing ROI of a specific feature, causal analysis",
            "canonId": "019dd956-6b0a-74a4-9ebb-77e5dc8152aa",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Trigger Action -> First Reaction -> Second Reaction -> Final Impact",
            "description": "Demonstrate how a single small strategic move triggers a cascade of positive outcomes",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-414f2b9433e3",
          "evidence": "Trigger 'atoms stop mattering' (p51) → unbundling diagram (p53) → TV penetration drop → new entrants outspending incumbents",
          "position": 5,
          "objective": "Show the same internet trigger toppling music, newspapers, then TV",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 52,
      "type": "analysis",
      "title": "The chart illustrates different rates of disruption: some industries collapse suddenly (Pay TV, Newspaper ads) while others decline gradually (Offline retail).",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 50,
        "componentCount": 7,
        "textChars": 325,
        "nDataPoints": 4,
        "notes": "The chart illustrates different rates of disruption: some industries collapse suddenly (Pay TV, Newspaper ads) while others decline gradually (Offline retail).",
        "elementsJson": [
          "headline_text",
          "line_chart",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:58.065+00",
          "seconds": 3.01,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/52",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-52",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "If pay TV fell 'gradually, then suddenly', retail has been a boiled frog",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-323ed2dc0965",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.5,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Decline from peak, USA (indexed)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.065+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6a2c7554-a075-4add-a181-9a7d1c381c71",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.2,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "disclaimer",
          "text": "Source: BLS, US Census, Companies",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Disclaimer",
              "slug": "disclaimer",
              "status": "active",
              "canonId": "91173477-d91f-4024-bbaf-d4f93e3f82dc",
              "version": 1,
              "description": "Legal/cautionary text that occupies most of the body of its slide."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.065+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6602ea11-9310-4b65-bc33-d8d108693369",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.15,
            "x": 0.05,
            "y": 0.35
          },
          "kind": "legend",
          "text": "Pay TV subs; Book store revenue; Newspaper ad revenue; Offline share of retail",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.065+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6bc828c1-cc9d-4a78-9ad3-15d194f74271",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Indexed decline from peak",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-37bf93b8b617",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.2,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "And how fast?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.065+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e2480e1f-87d0-4ffd-86cc-c933ca90c125",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.5,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "If pay TV fell 'gradually, then suddenly', retail has been a boiled frog",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.065+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "db8d7641-86a3-4aec-b994-a4f23cbd61d5",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-474ebbb18729",
          "evidence": "Title is the editorial insight",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 52,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Analytical method",
            "slug": "analytical-method",
            "status": "active",
            "bestFor": null,
            "canonId": "b42c4911-7946-49b5-951c-5f3d23f4e2bd",
            "version": 1,
            "bodyDocId": null,
            "description": "Diagnostic / structuring methods (5-whys, fishbone, issue tree, hypothesis-driven).",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "10d8d253-1c9a-4fd3-9f0a-c56cc8a34233",
          "evidence": "Decline from peak, USA (indexed)",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:15.564195+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 52,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-435ac777a442",
          "evidence": "Title uses 'boiled frog' and 'gradually then suddenly' metaphors",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 52,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 58,
          "from": 50,
          "loop": {
            "name": "13_domino_effect",
            "slug": "13-domino-effect",
            "status": "active",
            "bestFor": "Strategy roadmaps, showing ROI of a specific feature, causal analysis",
            "canonId": "019dd956-6b0a-74a4-9ebb-77e5dc8152aa",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Trigger Action -> First Reaction -> Second Reaction -> Final Impact",
            "description": "Demonstrate how a single small strategic move triggers a cascade of positive outcomes",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-414f2b9433e3",
          "evidence": "Trigger 'atoms stop mattering' (p51) → unbundling diagram (p53) → TV penetration drop → new entrants outspending incumbents",
          "position": 5,
          "objective": "Show the same internet trigger toppling music, newspapers, then TV",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 53,
      "type": "appendix",
      "title": "The slide uses a simple linear process flow to describe industry disruption.",
      "function": "present_framework",
      "rawType": "other",
      "block": null,
      "metadata": {
        "slideType": "other",
        "slideTypeCanon": {
          "name": "Other (fallback)",
          "slug": "other",
          "status": "active",
          "canonId": "019de52d-0af5-71ed-83de-d51ae245fc43",
          "version": 1,
          "description": null
        },
        "function": "present_framework",
        "functionCanon": {
          "name": "Present framework",
          "slug": "present_framework",
          "status": "active",
          "canonId": "019de52d-1403-7667-9100-d2ac6709f750",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 24,
        "componentCount": 4,
        "textChars": 372,
        "nDataPoints": 0,
        "notes": "The slide uses a simple linear process flow to describe industry disruption.",
        "elementsJson": [
          "headline_text",
          "process_diagram"
        ],
        "confidence": 0.95,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:58.018+00",
          "seconds": 2.688,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/53",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-53",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "The internet breaks apart old value chains and creates new ones - and we could have said that in 1995",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-acfc3ca273ef",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.4,
            "w": 0.6,
            "x": 0.2,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Value chains & gate-keeping based on physical break apart -> New models, New entrants, New channels, Destabilisation -> New gatekeepers, New winners",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": {
              "name": "Process flow",
              "slug": "process",
              "status": "active",
              "canonId": "019de52d-039c-718f-ad3a-efe9c4b3c838",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "process",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.018+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "72868605-9bc6-4f5f-818b-e356db1feaf9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "\"The internet breaks apart old value chains and creates new ones\" - and we could have said that in 1995",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.018+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "986f8cf8-570d-41e0-bb9d-e495a12faa7e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "The great unbundling",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.018+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f85286a6-51ed-49c6-90e7-56df47ef517e",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "The Rule of Three",
            "slug": "the-rule-of-three",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-8962-75cf-b4f8-9394501a6f33",
            "version": 1,
            "bodyDocId": null,
            "description": "Ideas presented in threes are more memorable and satisfying",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-4fe0ffe6a558",
          "evidence": "Three-stage diagram of the unbundling pattern",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 53,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Causal Chain",
            "slug": "causal-chain",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9e98-7269-907b-8cf727e9499d",
            "version": 1,
            "bodyDocId": null,
            "description": "Showing how one event leads to another in sequence",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-4b4f033c1ac6",
          "evidence": "Three-circle arrow diagram: value chains break → new entrants → new winners",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 53,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-52627afff4fc",
          "evidence": "Title coins 'The great unbundling' as named concept",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 53,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Audience frame",
            "slug": "audience-frame",
            "status": "active",
            "bestFor": null,
            "canonId": "2a1eefbd-5be8-4600-898b-49dbfcf73ec8",
            "version": 1,
            "bodyDocId": null,
            "description": "Tools for modelling and segmenting the audience (persona, JTBD, segmentation).",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "58c7b063-c9da-4738-adf5-7bfa7f1a72f3",
          "evidence": "The internet breaks apart old value chains and creates new ones - and we could have said that in 1995",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:09.119929+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 53,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "optional",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Narrative foundations (from the Storymakers methodology)",
            "slug": "narrative-foundations",
            "status": "active",
            "bestFor": null,
            "canonId": "019df269-258b-71bd-ad14-53598df04d2b",
            "version": 1,
            "bodyDocId": "019df269-2567-736e-8b9c-4ec77611334a",
            "description": "This skill focuses on the *adversarial* genre — activist campaigns, short",
            "familyLabel": "narrative-block",
            "categoryName": "Narrative & Transformation",
            "categorySlug": "narrative-transformation"
          },
          "agent": "storyteller",
          "layer": "slide",
          "agents": [
            "storyteller"
          ],
          "matchId": "73d88936-2c3e-40f9-a4a8-106cd9d8cbef",
          "evidence": "The great unbundling",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:09.153889+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 53,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "f6da3253-274b-452f-a3de-81c751a32d5c",
          "evidence": "The slide explicitly mentions 'value chains' and describes their unbundling process.",
          "framework": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-05-02 17:37:58.018+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 53,
          "frameworkName": "value-chain"
        },
        {
          "matchId": "019dd95a-1d21-7467-a468-83e3429989d4",
          "evidence": "Diagram explicitly cites 'value chains break apart' and traces gatekeepers→entrants→winners",
          "framework": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-04-29 13:07:34.940444+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 53,
          "frameworkName": "Value Chain Disruption"
        }
      ],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 58,
          "from": 50,
          "loop": {
            "name": "13_domino_effect",
            "slug": "13-domino-effect",
            "status": "active",
            "bestFor": "Strategy roadmaps, showing ROI of a specific feature, causal analysis",
            "canonId": "019dd956-6b0a-74a4-9ebb-77e5dc8152aa",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Trigger Action -> First Reaction -> Second Reaction -> Final Impact",
            "description": "Demonstrate how a single small strategic move triggers a cascade of positive outcomes",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-414f2b9433e3",
          "evidence": "Trigger 'atoms stop mattering' (p51) → unbundling diagram (p53) → TV penetration drop → new entrants outspending incumbents",
          "position": 5,
          "objective": "Show the same internet trigger toppling music, newspapers, then TV",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 54,
      "type": "analysis",
      "title": "The chart highlights the divergence between traditional TV, Pay TV, and streaming services.",
      "function": "establish_context",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 46,
        "componentCount": 7,
        "textChars": 261,
        "nDataPoints": 3,
        "notes": "The chart highlights the divergence between traditional TV, Pay TV, and streaming services.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:57.941+00",
          "seconds": 2.559,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/54",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-54",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "US pay TV penetration is down a third from the peak",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926d-d04900b9e077",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.5,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "US TV household penetration",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.941+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1e8e9c2b-ba88-4f78-a72e-39c979cb8a3d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.1,
            "x": 0.05,
            "y": 0.35
          },
          "kind": "legend",
          "text": "TV, Pay TV, Netflix streaming",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.941+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6c3971dc-0c39-4150-837c-afe39e9a89da",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "US TV household penetration",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926d-d68868ceeab6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.3,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Company data, FCC, US Census, Netflix, @BenedictEvans",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.941+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5af84523-ac62-4146-a5b8-94d178332c5c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.4,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "US pay TV penetration is down a third from the peak",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.941+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "520a475e-ca39-4865-b0d5-e84cd6b8648d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.2,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "TV unbundles...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.941+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3c71ec1b-6bd3-4171-87ae-d2cbd9333593",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-1b83-7130-9339-5a339d2fa23b",
          "evidence": "Chart annotation reinforces the headline number",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 54,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "db3f1f7d-d92b-4e68-8f29-02f9aa2c33da",
          "evidence": "chart/line: US TV household penetration",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:59:09.221737+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 54,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-563ad108020c",
          "evidence": "'US pay TV penetration is down a third from the peak'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 54,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Data Story Arc",
            "slug": "data-story-arc",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Context → Conflict → Insight → Implication structure for data narratives",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "5e7e9638-fc02-4241-99ff-173ab68ba667",
          "evidence": "US pay TV penetration is down a third from the peak",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:09.257267+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 54,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 58,
          "from": 50,
          "loop": {
            "name": "13_domino_effect",
            "slug": "13-domino-effect",
            "status": "active",
            "bestFor": "Strategy roadmaps, showing ROI of a specific feature, causal analysis",
            "canonId": "019dd956-6b0a-74a4-9ebb-77e5dc8152aa",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Trigger Action -> First Reaction -> Second Reaction -> Final Impact",
            "description": "Demonstrate how a single small strategic move triggers a cascade of positive outcomes",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-414f2b9433e3",
          "evidence": "Trigger 'atoms stop mattering' (p51) → unbundling diagram (p53) → TV penetration drop → new entrants outspending incumbents",
          "position": 5,
          "objective": "Show the same internet trigger toppling music, newspapers, then TV",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 55,
      "type": "evidence",
      "title": "This is a famous example of incumbent bias/underestimation of disruption.",
      "function": "illustrate_case",
      "rawType": "quote_slide",
      "block": null,
      "metadata": {
        "slideType": "quote_slide",
        "slideTypeCanon": {
          "name": "Quote slide",
          "slug": "quote_slide",
          "status": "active",
          "canonId": "019de52d-098e-7555-a9fd-4f0af7e80bc2",
          "version": 1,
          "description": null
        },
        "function": "illustrate_case",
        "functionCanon": {
          "name": "Illustrate case",
          "slug": "illustrate_case",
          "status": "active",
          "canonId": "019de52d-13b4-772c-bb73-1873612a7463",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 14,
        "componentCount": 3,
        "textChars": 239,
        "nDataPoints": 0,
        "notes": "This is a famous example of incumbent bias/underestimation of disruption.",
        "elementsJson": [
          "quote_block"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:57.464+00",
          "seconds": 1.912,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/55",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-55",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.1,
            "w": 0.6,
            "x": 0.2,
            "y": 0.48
          },
          "kind": "paragraph",
          "text": "Jeff Bewkes, CEO of Time Warner, on Netflix, 2010",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.464+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "10ffbd73-d8df-4b4d-b471-42aa6bc0a072",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.6,
            "x": 0.2,
            "y": 0.28
          },
          "kind": "quote",
          "text": "“Is the Albanian army going to take over the world? I don’t think so”",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Quote",
              "slug": "quote",
              "status": "active",
              "canonId": "019de52c-f8fb-751e-8bc6-d58e2d59562a",
              "version": 1,
              "description": "Pull quote or testimonial."
            },
            "tool": null,
            "subkind": {
              "name": "Pull quote",
              "slug": "pull-quote",
              "status": "active",
              "canonId": "019de52c-fbf9-76fe-97e1-a0b7540445c9",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "pull-quote",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:57.464+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5f412051-27f5-49d9-a8be-3a258834a068",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "quote",
          "text": "“Is the Albanian army going to take over the world? I don’t think so” — Jeff Bewkes, CEO of Time Warner, on Netflix, 2010",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Quote",
              "slug": "quote",
              "status": "active",
              "canonId": "019de52c-f8fb-751e-8bc6-d58e2d59562a",
              "version": 1,
              "description": "Pull quote or testimonial."
            },
            "tool": {
              "name": "Authority citation",
              "slug": "authority-citation",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-49ae-7557-89ad-3fca70469b45",
              "version": 1,
              "bodyDocId": null,
              "description": "Quoting an authority figure, study, or precedent to lend weight.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-fb84615fd2bf",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Authority Bias",
            "slug": "authority-bias",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-c38d-70b9-a284-b2b479763356",
            "version": 1,
            "bodyDocId": null,
            "description": "Expert opinions are weighted more heavily - cite credible sources",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Architect",
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-63161569ddf9",
          "evidence": "Quote leverages an executive's dismissal as ironic authority",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 55,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Call-and-Response",
            "slug": "call-and-response",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-a254-7484-a9b7-721eb21444a5",
            "version": 1,
            "bodyDocId": null,
            "description": "Engaging audience by creating pattern they complete mentally",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "68ba4c95-b346-49cb-9f0d-8048dc46a3e8",
          "evidence": "Jeff Bewkes, CEO of Time Warner, on Netflix, 2010",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:09.328401+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 55,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Opening Hooks",
            "slug": "opening-hooks",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-aeb0-77d5-bfbd-9cd9a6be8186",
            "version": 1,
            "bodyDocId": null,
            "description": "Techniques to capture attention: Startling statistic, provocative question, short story, analogy, contrast",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-5fa57c887b8b",
          "evidence": "'Albanian army' quote opens new-entrants beat",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 55,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 58,
          "from": 50,
          "loop": {
            "name": "13_domino_effect",
            "slug": "13-domino-effect",
            "status": "active",
            "bestFor": "Strategy roadmaps, showing ROI of a specific feature, causal analysis",
            "canonId": "019dd956-6b0a-74a4-9ebb-77e5dc8152aa",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Trigger Action -> First Reaction -> Second Reaction -> Final Impact",
            "description": "Demonstrate how a single small strategic move triggers a cascade of positive outcomes",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-414f2b9433e3",
          "evidence": "Trigger 'atoms stop mattering' (p51) → unbundling diagram (p53) → TV penetration drop → new entrants outspending incumbents",
          "position": 5,
          "objective": "Show the same internet trigger toppling music, newspapers, then TV",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 56,
      "type": "analysis",
      "title": "The chart highlights the significant content spending of new entrants (Netflix, Amazon, Apple) compared to legacy media companies.",
      "function": "compare_peers",
      "rawType": "market_landscape",
      "block": null,
      "metadata": {
        "slideType": "market_landscape",
        "slideTypeCanon": {
          "name": "Market landscape",
          "slug": "market_landscape",
          "status": "active",
          "canonId": "019de52d-0b6d-75db-a946-9ac362e3afc2",
          "version": 1,
          "description": null
        },
        "function": "compare_peers",
        "functionCanon": {
          "name": "Compare peers",
          "slug": "compare_peers",
          "status": "active",
          "canonId": "019de52d-1453-72ba-a367-9ba3d34c1630",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 48,
        "componentCount": 7,
        "textChars": 259,
        "nDataPoints": 10,
        "notes": "The chart highlights the significant content spending of new entrants (Netflix, Amazon, Apple) compared to legacy media companies.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_stacked"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:58.601+00",
          "seconds": 2.924,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/56",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-56",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "New entrants outspending most legacy content manufacturers",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-4fa9afee521f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.75,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "2021e content budgets ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.601+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fdc5bb89-34dd-4cda-890b-fb6f47d21367",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.1,
            "x": 0.03,
            "y": 0.35
          },
          "kind": "legend",
          "text": "Sport / Film & TV",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.601+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fd1b1f39-3c98-400a-be33-d67213fad159",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "2021e content budgets ($bn): $32bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-51830ec448c4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.2,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Morgan Stanley, Ampere",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.601+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "eba2ad3c-d6cd-472e-8fc1-09b57372eda1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.5,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "New entrants outspending most legacy content manufacturers",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.601+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "22b176d0-7772-4807-adb4-8ff3baae1e44",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.5,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "New entrants and aggregators emerge",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.601+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "bc6928b9-c0ef-4209-9cd1-0e3ed3eac622",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Chartjunk Elimination",
            "slug": "chartjunk-elimination",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
            "version": 1,
            "bodyDocId": null,
            "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "7ccfa671-5ca2-4581-bc1a-2ee7bddf6af8",
          "evidence": "chart/bar-stacked: 2021e content budgets ($bn)",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:09.431736+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 56,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-1b83-7130-9339-6bd73b681918",
          "evidence": "Competitive comparison chart",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 56,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-64e66eb0a762",
          "evidence": "$32bn callout — new entrants outspending content incumbents",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 56,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Market Segmentation Pyramid",
            "slug": "market-segmentation-pyramid",
            "status": "active",
            "bestFor": null,
            "canonId": "1c9f3543-c96f-4a5b-b4a4-9b2a412c0aaf",
            "version": 1,
            "bodyDocId": null,
            "description": null,
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "5d0f7e09-349b-4f16-bbda-b790e57903e3",
          "evidence": "2021e content budgets ($bn): $32bn",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:09.397164+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 56,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 58,
          "from": 50,
          "loop": {
            "name": "13_domino_effect",
            "slug": "13-domino-effect",
            "status": "active",
            "bestFor": "Strategy roadmaps, showing ROI of a specific feature, causal analysis",
            "canonId": "019dd956-6b0a-74a4-9ebb-77e5dc8152aa",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Trigger Action -> First Reaction -> Second Reaction -> Final Impact",
            "description": "Demonstrate how a single small strategic move triggers a cascade of positive outcomes",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-414f2b9433e3",
          "evidence": "Trigger 'atoms stop mattering' (p51) → unbundling diagram (p53) → TV penetration drop → new entrants outspending incumbents",
          "position": 5,
          "objective": "Show the same internet trigger toppling music, newspapers, then TV",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 57,
      "type": "analysis",
      "title": "The chart illustrates the decline of Live TV and the rise of Subscription streaming and YouTube.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 55,
        "componentCount": 7,
        "textChars": 382,
        "nDataPoints": 20,
        "notes": "The chart illustrates the decline of Live TV and the rise of Subscription streaming and YouTube.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_stacked"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:58.734+00",
          "seconds": 3.022,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/57",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-57",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "For UK 16-34s, streaming from US companies is now bigger than total viewing for the entire UK TV industry",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-0cc9c9ebd93d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.7,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "UK 16-34s daily video viewing (minutes)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.734+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1b375d49-74ae-43f2-9c99-a1692f93c869",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.15,
            "x": 0.03,
            "y": 0.35
          },
          "kind": "legend",
          "text": "YouTube, Subscription streaming, Broadcaster VOD, Recorded, Live TV",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.734+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f775d780-83c9-4c60-b3ce-2a96a1447d7d",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Daily video viewing minutes",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-135969aa9b12",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Ofcom",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.734+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "56f52dde-1e0b-46a0-a338-3dd9ed431d1c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.7,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "For UK 16-34s, streaming from US companies is now bigger than total viewing for the entire UK TV industry",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.734+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0fe1e6c6-8c68-4ead-9e08-9e77282415f4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.35,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Big fish become small fish",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.734+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3c677c2b-f49d-4c85-815b-e1f5df281c02",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Before-After-Bridge",
            "slug": "before-after-bridge",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-8604-7188-883f-42370288ad05",
            "version": 1,
            "bodyDocId": null,
            "description": "Narrative structure: Paint the before, show the after, explain the bridge",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "f34132da-5a65-4430-842d-f4d2d8b2d548",
          "evidence": "UK 16-34s daily video viewing (minutes)",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:09.49766+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 57,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-6cc499bc7697",
          "evidence": "'UK 16-34s, US streaming bigger than entire UK TV industry'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 57,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 58,
          "from": 50,
          "loop": {
            "name": "13_domino_effect",
            "slug": "13-domino-effect",
            "status": "active",
            "bestFor": "Strategy roadmaps, showing ROI of a specific feature, causal analysis",
            "canonId": "019dd956-6b0a-74a4-9ebb-77e5dc8152aa",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Trigger Action -> First Reaction -> Second Reaction -> Final Impact",
            "description": "Demonstrate how a single small strategic move triggers a cascade of positive outcomes",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-414f2b9433e3",
          "evidence": "Trigger 'atoms stop mattering' (p51) → unbundling diagram (p53) → TV penetration drop → new entrants outspending incumbents",
          "position": 5,
          "objective": "Show the same internet trigger toppling music, newspapers, then TV",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 58,
      "type": "analysis",
      "title": "The slide uses a rhetorical question as a title to frame the industry shift.",
      "function": "establish_context",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 44,
        "componentCount": 6,
        "textChars": 387,
        "nDataPoints": 1,
        "notes": "The slide uses a rhetorical question as a title to frame the industry shift.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "photo"
        ],
        "confidence": 0.95,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:01.486+00",
          "seconds": 5.379,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/58",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-58",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Now the TV has become a battleground, powered by the shift from live to streaming",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-3ba86515d227",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.8,
            "w": 0.4,
            "x": 0.56,
            "y": 0.18
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.486+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d48cfb0e-fd22-4dcc-8eca-0ef908f66c07",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Legacy TV advertising: $200bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926e-3ce946ba1856",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.4,
            "x": 0.07,
            "y": 0.33
          },
          "kind": "paragraph",
          "text": "Apple announced the Apple TV and iPhone at the same event in 2007... But TV software was a backwater for a decade. Now the TV has become a battleground, powered by the shift from live to streaming. And the target is $200bn of legacy TV advertising",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.486+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fa89f3a7-c72e-41e8-84b9-605ce8aec06b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.05,
            "x": 0.07,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: Sky",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.486+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "eeed83a7-9709-4614-82c0-57a06c0e6521",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.25,
            "x": 0.07,
            "y": 0.24
          },
          "kind": "title",
          "text": "New control points?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.486+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "554515bd-20a6-4dd1-8202-bb25261e1138",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Hypothesis-Driven Structure",
            "slug": "hypothesis-driven-structure",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-833f-7419-9932-be80362019a7",
            "version": 1,
            "bodyDocId": null,
            "description": "Start with a hypothesis and organize evidence to prove/disprove it",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "e3b59388-0032-42cd-9975-92c6ac08da3c",
          "evidence": "Now the TV has become a battleground, powered by the shift from live to streaming",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:09.644575+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 58,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Problem Statement Canvas",
            "slug": "problem-statement-canvas",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-839d-744b-ad11-9bf3e3642a18",
            "version": 1,
            "bodyDocId": null,
            "description": "Structured definition of the problem: What? Who? Where? When? Scale?",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "8797ca32-49f5-4ff0-8845-cbef418932af",
          "evidence": "Legacy TV advertising: $200bn",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:09.680022+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 58,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 58,
          "from": 50,
          "loop": {
            "name": "13_domino_effect",
            "slug": "13-domino-effect",
            "status": "active",
            "bestFor": "Strategy roadmaps, showing ROI of a specific feature, causal analysis",
            "canonId": "019dd956-6b0a-74a4-9ebb-77e5dc8152aa",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Trigger Action -> First Reaction -> Second Reaction -> Final Impact",
            "description": "Demonstrate how a single small strategic move triggers a cascade of positive outcomes",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-414f2b9433e3",
          "evidence": "Trigger 'atoms stop mattering' (p51) → unbundling diagram (p53) → TV penetration drop → new entrants outspending incumbents",
          "position": 5,
          "objective": "Show the same internet trigger toppling music, newspapers, then TV",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 59,
      "type": "evidence",
      "title": "Uses a TechCrunch screenshot as a primary artifact to establish historical context.",
      "function": "illustrate_case",
      "rawType": "case_study",
      "block": null,
      "metadata": {
        "slideType": "case_study",
        "slideTypeCanon": {
          "name": "Case study",
          "slug": "case_study",
          "status": "active",
          "canonId": "019de52d-0b95-7344-8090-926f3b8e92c8",
          "version": 1,
          "description": null
        },
        "function": "illustrate_case",
        "functionCanon": {
          "name": "Illustrate case",
          "slug": "illustrate_case",
          "status": "active",
          "canonId": "019de52d-13b4-772c-bb73-1873612a7463",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 28,
        "componentCount": 5,
        "textChars": 228,
        "nDataPoints": 2,
        "notes": "Uses a TechCrunch screenshot as a primary artifact to establish historical context.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "screenshot"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:01.286+00",
          "seconds": 5.162,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/59",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-59",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Deploying old ideas that are finally ready to work",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:15+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-1990f7d1c66d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.82,
            "w": 0.31,
            "x": 0.607,
            "y": 0.144
          },
          "kind": "image",
          "text": "TechCrunch article screenshot regarding Hulu launch",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Screenshot",
              "slug": "screenshot",
              "status": "active",
              "canonId": "019de52c-fd87-7509-8391-3d79fb339379",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "screenshot",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.286+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e36cfafc-aab6-49ea-95f3-60b74b4f8125",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.38,
            "x": 0.045,
            "y": 0.35
          },
          "kind": "paragraph",
          "text": "YouTube launched in 2005, and Hulu in 2007\n\nDeploying old ideas that are finally ready to work",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.286+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "12efdedb-cf18-460e-8511-ef80cf8a5845",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.045,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: Techcrunch",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.286+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "438a48d1-18d2-41b6-91c1-b6947fccd74d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.28,
            "x": 0.045,
            "y": 0.24
          },
          "kind": "title",
          "text": "Welcome to 2007",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.286+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "47a8b675-0e51-4519-a3bb-02c9a8b772f1",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Callback",
            "slug": "callback",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-a3a9-708f-b4a3-d3da2181c576",
            "version": 1,
            "bodyDocId": null,
            "description": "Referencing earlier content for payoff and cohesion",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "loop",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-70ecc6a087b2",
          "evidence": "'Welcome to 2007' echoes 'Welcome to 2005' callback structure",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 59,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-76a2b11cca37",
          "evidence": "Callout 'deploying old ideas finally ready to work'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 59,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Aha! Moment",
            "slug": "aha-moment",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-a5b5-7763-820e-b299c5f27a32",
            "version": 1,
            "bodyDocId": null,
            "description": "The moment when the audience realizes the value - design for insight revelation",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "0958f6aa-0075-4890-a1c2-d61761f743a7",
          "evidence": "Deploying old ideas that are finally ready to work",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:59:09.748468+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 59,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Story Moments",
            "slug": "story-moments",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-ae4e-768d-a18b-108e6cda511e",
            "version": 1,
            "bodyDocId": null,
            "description": "Design key emotional beats: The Shock, The Vision, The Proof, The Choice, The Call",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "0b604b1f-a2dd-4e7d-8a5f-5b718d645315",
          "evidence": "YouTube launched in 2005, and Hulu in 2007",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:09.782761+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 59,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 60,
      "type": "analysis",
      "title": "The chart shows a significant spike in UK ecommerce penetration during 2020 compared to a more moderate increase in the USA.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 40,
        "componentCount": 6,
        "textChars": 311,
        "nDataPoints": 2,
        "notes": "The chart shows a significant spike in UK ecommerce penetration during 2020 compared to a more moderate increase in the USA.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:58.819+00",
          "seconds": 2.61,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/60",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-60",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.55,
            "w": 0.72,
            "x": 0.203,
            "y": 0.27
          },
          "kind": "chart",
          "text": "Ecommerce as a share of addressable retail*",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.819+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cddc0d65-ac3c-4c80-a36e-4a388ee144bb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.33,
            "x": 0.203,
            "y": 0.905
          },
          "kind": "disclaimer",
          "text": "Source: ONS, US Census\n* Excluding cars, car parts, fuel, bars & restaurants. Seasonally adjusted",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Disclaimer",
              "slug": "disclaimer",
              "status": "active",
              "canonId": "91173477-d91f-4024-bbaf-d4f93e3f82dc",
              "version": 1,
              "description": "Legal/cautionary text that occupies most of the body of its slide."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.819+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a1a9ccd7-890e-40ce-992b-5f21324a1266",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.09,
            "x": 0.028,
            "y": 0.345
          },
          "kind": "legend",
          "text": "UK (monthly)\nUSA (quarterly)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.819+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5a5228ac-e458-49cf-9947-e7facc03f5c3",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Ecommerce as a share of addressable retail",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-697f65ee4b93",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.025,
            "w": 0.595,
            "x": 0.203,
            "y": 0.128
          },
          "kind": "paragraph",
          "text": "Lockdown has pulled forward future adoption - but much less in the USA than elsewhere",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.819+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "04291932-7a28-458e-ae3b-8036e6db7dca",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.042,
            "w": 0.223,
            "x": 0.203,
            "y": 0.055
          },
          "kind": "title",
          "text": "Retail unbundles",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.819+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f012a4a5-ac1f-4f60-8933-058eb46e74ed",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "cfc61357-3fc5-4bf8-893f-e0173dbc35bb",
          "evidence": "chart/line: Ecommerce as a share of addressable retail*",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:09.848789+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 60,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 61,
      "type": "analysis",
      "title": "The chart highlights the digital divide across European nations.",
      "function": "analyze_data",
      "rawType": "data_table",
      "block": null,
      "metadata": {
        "slideType": "data_table",
        "slideTypeCanon": {
          "name": "Data table",
          "slug": "data_table",
          "status": "active",
          "canonId": "019de52d-0bbd-71b9-9918-417f904abbf8",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 57,
        "componentCount": 7,
        "textChars": 383,
        "nDataPoints": 51,
        "notes": "The chart highlights the digital divide across European nations.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "other"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:11.275+00",
          "seconds": 15.017,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/61",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-61",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Over 80% of people in Britain buy online regularly, but less than a third of Italians",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-a0c5e93179b6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.55,
            "w": 0.7,
            "x": 0.15,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Percentage of population buying online in last 3 months, Europe",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Dot plot",
              "slug": "dot",
              "status": "active",
              "canonId": "019de52d-0235-738b-bd2b-78f8e24d7cb0",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "dot",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:11.275+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9425494a-92a0-4c0c-aa3e-8365a3c4f4b5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.05,
            "x": 0.05,
            "y": 0.35
          },
          "kind": "legend",
          "text": "2020, 2019, 2015",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:11.275+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "42e59817-8395-4d66-89b8-cc7a7768c2bf",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Percentage of population buying online: 80%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-a75cd0a5a023",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "Over 80% of people in Britain buy online regularly, but less than a third of Italians",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:11.275+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ecd16d1e-7128-4edb-a84b-d6d42124f7bd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.3,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Eurostat. Data for France in 2020 not available",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:11.275+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8fcc98d8-769a-4443-be71-d0b400b82251",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "(The future is unevenly distributed)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:11.275+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5b1fbe47-bc02-4cc6-b3a5-ab2ff48aefb8",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-7c3d3157dccd",
          "evidence": "Title 'future is unevenly distributed' references Gibson",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 61,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Chartjunk Elimination",
            "slug": "chartjunk-elimination",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
            "version": 1,
            "bodyDocId": null,
            "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "0a3a7775-f1b4-494f-8551-0c0b5b6734c1",
          "evidence": "chart/dot: Percentage of population buying online in last 3 months, Europe",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:09.955498+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 61,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-7b79e44f57fd",
          "evidence": "'80% Britain online vs less than a third of Italians'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 61,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Data Story Arc",
            "slug": "data-story-arc",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Context → Conflict → Insight → Implication structure for data narratives",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "2a1a2b14-ebde-4c5c-93b6-3bae11fdfbd5",
          "evidence": "Over 80% of people in Britain buy online regularly, but less than a third of Italians",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:09.916671+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 61,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 62,
      "type": "analysis",
      "title": "The chart highlights a significant spike in online retail penetration during 2020.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 50,
        "componentCount": 7,
        "textChars": 326,
        "nDataPoints": 3,
        "notes": "The chart highlights a significant spike in online retail penetration during 2020.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:58.755+00",
          "seconds": 2.49,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/62",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-62",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Excluding grocery, 40% of UK retail spending is now online",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:21+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9272-db48327669e9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.55,
            "w": 0.75,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "UK ecommerce as % retail*",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.755+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ffa8129e-463f-43d3-a743-b56448bc498d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.15,
            "x": 0.03,
            "y": 0.35
          },
          "kind": "legend",
          "text": "Share of non-grocery; Share of total; Share of grocery",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.755+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "486ae378-899e-4c3f-b967-0957fc5c7849",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "UK ecommerce as % retail: 40%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:21+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9272-de4a10e022a9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "paragraph",
          "text": "Source: ONS\n* Excluding cars, car parts, fuel, bars & restaurants. Seasonally adjusted",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.755+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "06a64cee-5728-46c8-9b8f-e1c4590c3f5c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.45,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "Excluding grocery, 40% of UK retail spending is now online",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.755+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7b2e8d4e-0ebf-45c6-a146-3ffa02afc694",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.25,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Retail unbundles",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:58.755+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9bc6e88a-719d-4dbd-8d38-4a6a8cd1e8f4",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "2x2 matrix",
            "slug": "matrix-2x2",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-50ab-72d1-8afb-3ab0a38e32a8",
            "version": 1,
            "bodyDocId": null,
            "description": "BCG matrix, importance/urgency, any axes-and-quadrants frame.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "804a6c96-a260-42a4-b334-d9d82cd4baa9",
          "evidence": "Excluding grocery, 40% of UK retail spending is now online",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:10.028958+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 62,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-85effca34b36",
          "evidence": "Title 'Retail unbundles' echoes the unbundling thesis",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 62,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-81327ad0e9f5",
          "evidence": "'40% of UK retail spending now online'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 62,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Data Story Arc",
            "slug": "data-story-arc",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Context → Conflict → Insight → Implication structure for data narratives",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "704dd961-2e45-4e51-ba07-913500d1d41f",
          "evidence": "UK ecommerce as % retail: 40%",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:10.063984+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 62,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 63,
      "type": "analysis",
      "title": "The chart categorizes retail revenue by delivery method, highlighting the split between physical retail and ecommerce, grocery, and restaurant models.",
      "function": "analyze_data",
      "rawType": "data_table",
      "block": null,
      "metadata": {
        "slideType": "data_table",
        "slideTypeCanon": {
          "name": "Data table",
          "slug": "data_table",
          "status": "active",
          "canonId": "019de52d-0bbd-71b9-9918-417f904abbf8",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 31,
        "componentCount": 5,
        "textChars": 243,
        "nDataPoints": 7,
        "notes": "The chart categorizes retail revenue by delivery method, highlighting the split between physical retail and ecommerce, grocery, and restaurant models.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_stacked",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:59.52+00",
          "seconds": 2.844,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/63",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-63",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.6,
            "w": 0.7,
            "x": 0.15,
            "y": 0.25
          },
          "kind": "chart",
          "text": "US retail revenue by delivery model, 2020 ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.52+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cdc68553-0285-457e-93f4-959ae986876f",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "US retail revenue: $2,500bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:18+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-f9bb7f646e16",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.4,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "Cardboard boxes versus hand delivery, trucks and bikes",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.52+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "45b75886-f94c-496c-b058-bc87b2630dd7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.3,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: US Census. Cars, car repair & gasoline not shown. * 2019",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.52+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d0e57ecf-4437-41c3-8c9d-1be911569f5f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Everyone buys anything online - the question is how",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.52+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9a810244-148e-4bf1-aef6-55e2e325334c",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "25eb7d9c-cb6e-48d4-be25-5875f8bb9c6e",
          "evidence": "chart/bar-stacked: US retail revenue by delivery model, 2020 ($bn)",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:10.20368+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 63,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 64,
      "type": "analysis",
      "title": "The chart illustrates the shift in market share within the US logistics sector, specifically Amazon's entry and growth.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 55,
        "componentCount": 7,
        "textChars": 369,
        "nDataPoints": 28,
        "notes": "The chart illustrates the shift in market share within the US logistics sector, specifically Amazon's entry and growth.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_stacked"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:02.453+00",
          "seconds": 5.736,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/64",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-64",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Amazon spent $74bn on shipping in the last 12 months, and expects to be larger than UPS or Fedex in the USA by 2022",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-bb5fd1f99869",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Annual US parcel volume (bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.453+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e4f34a03-1081-484f-be81-29ba8bf80612",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.1,
            "x": 0.03,
            "y": 0.35
          },
          "kind": "legend",
          "text": "Amazon Logistics, Fedex, UPS, USPS",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.453+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ef4697d7-b5b9-4ba0-9be2-2af071a3dc18",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Annual US parcel volume: 20bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-bc9fb8a74040",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.15,
            "x": 0.2,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: Pitney Bowes, Amazon",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.453+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "215f01e8-32a9-4923-8cb6-ef8f5d75d9b0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "Amazon spent $74bn on shipping in the last 12 months, and expects to be larger than UPS or Fedex in the USA by 2022",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.453+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4bdf67db-a592-4e96-a930-98a92d2544ad",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.27,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "New logistics models",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.453+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4358b2c1-1fc7-4d1e-9b82-6df9bda895e6",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "84b9174f-f2ef-4007-82e6-de157cc176df",
          "evidence": "chart/bar-stacked: Annual US parcel volume (bn)",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:10.306125+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 64,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-89f6bb9ec3d9",
          "evidence": "'Amazon $74bn shipping; larger than UPS or Fedex by 2022'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 64,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Flywheel",
            "slug": "flywheel",
            "status": "active",
            "bestFor": null,
            "canonId": "019de52d-1ad8-75ab-9027-a40365590152",
            "version": 1,
            "bodyDocId": null,
            "description": null,
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "8f5ade98-3065-42c1-916c-c0549aaae4fb",
          "evidence": "Amazon spent $74bn on shipping in the last 12 months, and expects to be larger than UPS or Fedex in the USA by 2022",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:59:10.272015+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 64,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 65,
      "type": "analysis",
      "title": "The chart compares Walmart net sales against Amazon ex. AWS revenue and Amazon GMV.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 48,
        "componentCount": 7,
        "textChars": 297,
        "nDataPoints": 3,
        "notes": "The chart compares Walmart net sales against Amazon ex. AWS revenue and Amazon GMV.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:01.726+00",
          "seconds": 4.906,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/65",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-65",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "The e-commerce leader is on track to overtake the car-commerce leader",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-96cd38674a4f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.535,
            "w": 0.798,
            "x": 0.201,
            "y": 0.271
          },
          "kind": "chart",
          "text": "Retail revenue ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.726+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f6edbd45-8cbb-4fae-9059-f432fb1edaa1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.13,
            "x": 0.025,
            "y": 0.345
          },
          "kind": "legend",
          "text": "Walmart net sales; Amazon ex. AWS; Amazon GMV (e)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.726+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "302c293b-41be-4979-8b2c-9d34a84fdfa3",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Retail revenue: $600bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-9b55bfe8ee53",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.21,
            "x": 0.201,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: Amazon, Walmart, @BenedictEvans",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.726+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "709d19dc-8839-48ba-b631-2a9ef4483918",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.025,
            "w": 0.633,
            "x": 0.201,
            "y": 0.128
          },
          "kind": "title",
          "text": "The e-commerce leader is on track to overtake the car-commerce leader",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.726+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c8dce02a-65b0-42dc-b669-ff1ba5210034",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.045,
            "w": 0.421,
            "x": 0.201,
            "y": 0.055
          },
          "kind": "title",
          "text": "New channels, new aggregators",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.726+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b312df6e-8204-458a-8f7e-f675e5b8e760",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "2x2 matrix",
            "slug": "matrix-2x2",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-50ab-72d1-8afb-3ab0a38e32a8",
            "version": 1,
            "bodyDocId": null,
            "description": "BCG matrix, importance/urgency, any axes-and-quadrants frame.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "ac8cdae8-b35d-4e07-8bd0-d20704b087fb",
          "evidence": "New channels, new aggregators",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:20.745246+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 65,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-8c6167d38a3c",
          "evidence": "Title states 'e-commerce leader on track to overtake car-commerce leader'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 65,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Audience Definition",
            "slug": "audience-definition",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-7f2a-775d-aeee-ff099bcb7756",
            "version": 1,
            "bodyDocId": null,
            "description": "Six key questions: Who are they? What do they know? What do they believe? What do they care about? What do they fear? What decisions can they make?",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "2b743680-54c5-40be-8d96-d4299aed5de4",
          "evidence": "The e-commerce leader is on track to overtake the car-commerce leader",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:20.703923+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 65,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 66,
      "type": "analysis",
      "title": "The slide highlights the significant growth of Amazon's advertising business.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 43,
        "componentCount": 6,
        "textChars": 295,
        "nDataPoints": 18,
        "notes": "The slide highlights the significant growth of Amazon's advertising business.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:59.499+00",
          "seconds": 2.381,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/66",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-66",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "'Merchant media' - Amazon has >$25bn of ad revenue, possibly producing more cash than AWS",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-84afbd120747",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.6,
            "x": 0.2,
            "y": 0.27
          },
          "kind": "chart",
          "text": "Amazon 'other, predominantly ads' revenue, TTM ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.499+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "99af52c3-7634-49f4-a993-f45e2a909f9c",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "TTM Revenue: $31bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-8a8cd771c80c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "'Merchant media' - Amazon has >$25bn of ad revenue, possibly producing more cash than AWS",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.499+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "88fa0c01-a057-4412-acd0-f6ff5070f5c4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Amazon",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.499+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "21762ed4-9d3d-4746-b399-923da1ecfb48",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.45,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "New channels have new toll booths",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.499+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f4926b15-f791-4f36-ba99-47a18223cdd1",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Analytical method",
            "slug": "analytical-method",
            "status": "active",
            "bestFor": null,
            "canonId": "b42c4911-7946-49b5-951c-5f3d23f4e2bd",
            "version": 1,
            "bodyDocId": null,
            "description": "Diagnostic / structuring methods (5-whys, fishbone, issue tree, hypothesis-driven).",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "1130b68c-383f-4d2b-8f71-dac3fc30f72a",
          "evidence": "Amazon 'other, predominantly ads' revenue, TTM ($bn)",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:20.829815+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 66,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-90c4ff09a137",
          "evidence": "Amazon ad revenue >$25bn, possibly bigger cash than AWS",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 66,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-95a95d93c3cb",
          "evidence": "'Toll booths' metaphor for new ad revenue",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 66,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 67,
      "type": "analysis",
      "title": "The slide title 'Endless waves of new competitors' seems disconnected from the chart showing Shopify's own growth, implying Shopify is the 'new competitor' or t",
      "function": "establish_context",
      "rawType": "market_landscape",
      "block": null,
      "metadata": {
        "slideType": "market_landscape",
        "slideTypeCanon": {
          "name": "Market landscape",
          "slug": "market_landscape",
          "status": "active",
          "canonId": "019de52d-0b6d-75db-a946-9ac362e3afc2",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 37,
        "componentCount": 6,
        "textChars": 201,
        "nDataPoints": 8,
        "notes": "The slide title 'Endless waves of new competitors' seems disconnected from the chart showing Shopify's own growth, implying Shopify is the 'new competitor' or that the market is crowded.",
        "elementsJson": [
          "bar_chart_vertical"
        ],
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:37:59.905+00",
          "seconds": 2.708,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/67",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-67",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Shopify powered over $160bn of e-commerce in the last 12 months",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-eb5b67bf4412",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.75,
            "x": 0.18,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Shopify GMV ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.905+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0952c3c6-0b65-4acf-b2c6-07644254287c",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "GMV: $160bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-eddddcd38c05",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Shopify",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.905+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e7d063b6-fb3f-417b-a756-ee1af52427d4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.45,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "Shopify powered over $160bn of e-commerce in the last 12 months",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.905+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "882f3608-6d6c-4185-a79a-83e00c399b45",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.45,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Endless waves of new competitors",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:37:59.905+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "922599bc-68fc-44d9-84a0-804f2016d0a6",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-9b45558f3662",
          "evidence": "Shopify $160bn GMV in last 12 months",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 67,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Data Story Arc",
            "slug": "data-story-arc",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Context → Conflict → Insight → Implication structure for data narratives",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "a4ce86ea-c0e3-43ab-a8d1-48ec0a8e80c6",
          "evidence": "Shopify powered over $160bn of e-commerce in the last 12 months",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:20.910929+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 67,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 68,
      "type": "analysis",
      "title": "The chart highlights the shift in Amazon's business model towards Marketplace and the rapid growth of Shopify.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 52,
        "componentCount": 7,
        "textChars": 305,
        "nDataPoints": 24,
        "notes": "The chart highlights the shift in Amazon's business model towards Marketplace and the rapid growth of Shopify.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_grouped"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:00.431+00",
          "seconds": 2.806,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/68",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-68",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "60% of Amazon is now Marketplace - and Shopify is now 45% as large as Marketplace",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-b26496a8e7e4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.55,
            "w": 0.94,
            "x": 0.03,
            "y": 0.27
          },
          "kind": "chart",
          "text": "Ecommerce GMV ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Grouped bar chart",
              "slug": "bar-grouped",
              "status": "active",
              "canonId": "019de52c-ff3b-751e-a8ff-f21ff11097b1",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-grouped",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.431+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8dfb8f05-3254-4f82-8ad2-34b129d5d225",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.16,
            "x": 0.03,
            "y": 0.345
          },
          "kind": "legend",
          "text": "Amazon 1P\nAmazon Marketplace (e)\nShopify",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.431+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "81981518-1359-4854-a609-b8003b749afe",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Ecommerce GMV: $360bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-b5998d004566",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.025,
            "w": 0.52,
            "x": 0.201,
            "y": 0.125
          },
          "kind": "paragraph",
          "text": "60% of Amazon is now Marketplace - and Shopify is now 45% as large as Marketplace",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.431+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "849ec63e-b2e7-4fef-9507-559f69a5ed9f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.2,
            "x": 0.205,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: Amazon, Shopify, @BenedictEvans",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.431+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8b18d10b-8382-407d-b80b-e8cc72b02e73",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.045,
            "w": 0.36,
            "x": 0.201,
            "y": 0.055
          },
          "kind": "title",
          "text": "And new ways to unbundle",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.431+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9743b50e-5064-4323-93bb-c8b1d714a605",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-9f81866673cc",
          "evidence": "'60% of Amazon is now Marketplace; Shopify is 45% as large'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 68,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 69,
      "type": "tension",
      "title": "Includes a screenshot of an Apple 'Personalized Ads' prompt as a case study/example.",
      "function": "frame_problem",
      "rawType": "problem_statement",
      "block": null,
      "metadata": {
        "slideType": "problem_statement",
        "slideTypeCanon": {
          "name": "Problem statement",
          "slug": "problem_statement",
          "status": "active",
          "canonId": "019de52d-0879-768d-bba8-8da8a5a121d4",
          "version": 1,
          "description": null
        },
        "function": "frame_problem",
        "functionCanon": {
          "name": "Frame problem",
          "slug": "frame_problem",
          "status": "active",
          "canonId": "019de52d-13db-753e-ad70-e9b2d0dab398",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 30,
        "componentCount": 5,
        "textChars": 354,
        "nDataPoints": 0,
        "notes": "Includes a screenshot of an Apple 'Personalized Ads' prompt as a case study/example.",
        "elementsJson": [
          "headline_text",
          "bullet_list",
          "screenshot"
        ],
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:00.644+00",
          "seconds": 2.879,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/69",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-69",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "We personalise ads; you track your users; they violate fundamental human rights",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-926f-d26261fb0de2",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.725,
            "w": 0.345,
            "x": 0.59,
            "y": 0.09
          },
          "kind": "image",
          "text": "Apple Personalized Ads prompt",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Screenshot",
              "slug": "screenshot",
              "status": "active",
              "canonId": "019de52c-fd87-7509-8391-3d79fb339379",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "screenshot",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.644+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a6f82a3b-65d4-465f-aed1-bdd9de290fce",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.425,
            "x": 0.045,
            "y": 0.335
          },
          "kind": "paragraph",
          "text": "“We personalise ads; you track your users; they violate fundamental human rights”\n\nSmartphones are not a neutral platform...\n\nAnd this has a big impact on D2C brands\n\nConflict between privacy and competition regulators",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.644+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "dc9403ea-c0a2-4cc0-bc82-c7b2001c607b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.08,
            "x": 0.045,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: Apple",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.644+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "396e956f-693e-42c1-bb88-604d9c7a716c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.055,
            "w": 0.265,
            "x": 0.045,
            "y": 0.245
          },
          "kind": "title",
          "text": "New gatekeepers",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.644+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b6b024bd-57ca-4efe-9601-cdd417501c7f",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Tricolon",
            "slug": "tricolon",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-a13d-7356-9038-da27abe565f8",
            "version": 1,
            "bodyDocId": null,
            "description": "Three parallel phrases of increasing length or intensity",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "loop",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-a39d8d891537",
          "evidence": "Three parallel clauses: 'we personalise / you track / they violate'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 69,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-a5a6f45f4c35",
          "evidence": "Title 'New gatekeepers' coins the concept",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 69,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 70,
      "type": "analysis",
      "title": "The chart illustrates the shift in market share from large brands/private label to smaller brands as the channel moves from physical retail to home-shipped ecom",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 50,
        "componentCount": 7,
        "textChars": 278,
        "nDataPoints": 15,
        "notes": "The chart illustrates the shift in market share from large brands/private label to smaller brands as the channel moves from physical retail to home-shipped ecommerce.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_100pct"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:00.918+00",
          "seconds": 2.792,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/70",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-70",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Smaller brands have dramatically larger share online",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-1de37a326a68",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.7,
            "x": 0.15,
            "y": 0.25
          },
          "kind": "chart",
          "text": "US CPG sales by brand size, 2020",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart (100%)",
              "slug": "bar-stacked-100pct",
              "status": "active",
              "canonId": "019de52c-ff14-71b8-8d88-860f8d7da84b",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked-100pct",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.918+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b7d98be0-5361-4ff4-b6b4-ebcbd344fde8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.1,
            "x": 0.03,
            "y": 0.35
          },
          "kind": "legend",
          "text": "Private label, Large brands, Medium, Small, Extra small",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.918+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6b856965-b1cf-455f-b6c8-893d55bafce4",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Market share by brand size",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-2213d261d029",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.05,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: IRI",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.918+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "15914302-4319-464c-ab7f-bd7f2f6b4ff4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Because changing the channel changes what’s bought",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.918+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "94317512-f607-4ac6-8b9f-d385af7c16ec",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.4,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "Smaller brands have dramatically larger share online",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.918+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "90ab0ddd-726c-48be-b95b-1554dbc36277",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-aa1d923a8bb2",
          "evidence": "Callout 'Smaller brands have dramatically larger share online'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 70,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Chartjunk Elimination",
            "slug": "chartjunk-elimination",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
            "version": 1,
            "bodyDocId": null,
            "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "be3d2c92-b14f-4181-978a-bdea38f14dce",
          "evidence": "US CPG sales by brand size, 2020",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:21.069224+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 70,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 71,
      "type": "analysis",
      "title": "The chart highlights L'Oreal as having the highest ecommerce penetration among the listed companies.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 26,
        "componentCount": 5,
        "textChars": 121,
        "nDataPoints": 6,
        "notes": "The chart highlights L'Oreal as having the highest ecommerce penetration among the listed companies.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_vertical",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:00.853+00",
          "seconds": 2.55,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/71",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-71",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.55,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Ecommerce as % sales, 2021",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.853+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5d6f7297-b888-41b3-abc1-f3df4bbf1c46",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Ecommerce as % sales: 28%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-022ac12cd86a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Companies",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.853+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3c1f4987-4003-412a-81f5-1eea99199998",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.25,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Brands go digital",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.853+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "004e17f8-ede0-4c14-b043-65ec7345fd15",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.3,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "B2B businesses learning new channels",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.853+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5b0eb65b-5357-4021-b4f8-95118d18c9ae",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 72,
      "type": "analysis",
      "title": "The chart illustrates market disruption by a new entrant using digital-first strategies.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 49,
        "componentCount": 7,
        "textChars": 311,
        "nDataPoints": 3,
        "notes": "The chart illustrates market disruption by a new entrant using digital-first strategies.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:00.962+00",
          "seconds": 2.622,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/72",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-72",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Shein breaks in to fast fashion with a new UX and new data models (and a massive acquisition budget)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-38117af23199",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.55,
            "w": 0.7,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Worldwide search interest",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.962+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2a8e3074-a574-4052-8320-a17d1ef3058f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.05,
            "x": 0.05,
            "y": 0.35
          },
          "kind": "legend",
          "text": "Zara, H&M, Shein",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.962+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0b93f969-6833-434c-913d-bd18711589fe",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Worldwide search interest",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-3cf0d7c074a8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Google Trends",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.962+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3d199b78-8d1e-4e57-9ec5-002b0f9992f7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.35,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "New experiences break in",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.962+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "17f67f44-355e-466f-bbdf-3d2f43b6423b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.65,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "Shein breaks in to fast fashion with a new UX and new data models (and a massive acquisition budget)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.962+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1a7431b8-f789-492c-8d71-1fb754b0708e",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Storytelling Effect",
            "slug": "storytelling-effect",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-981b-74f9-9096-5c8df03dab5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Stories are remembered up to 22x better than facts alone",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-ad3542ca89b7",
          "evidence": "Shein narrative: new UX + new data models + acquisition budget",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 72,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 73,
      "type": "analysis",
      "title": "The chart tracks the top 10 favorite online shopping brands for female US teenagers.",
      "function": "analyze_data",
      "rawType": "market_landscape",
      "block": null,
      "metadata": {
        "slideType": "market_landscape",
        "slideTypeCanon": {
          "name": "Market landscape",
          "slug": "market_landscape",
          "status": "active",
          "canonId": "019de52d-0b6d-75db-a946-9ac362e3afc2",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 37,
        "componentCount": 6,
        "textChars": 179,
        "nDataPoints": 12,
        "notes": "The chart tracks the top 10 favorite online shopping brands for female US teenagers.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_stacked"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:01.053+00",
          "seconds": 2.64,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/73",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-73",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.6,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Female US teenagers' top 10 favourite online shopping brands",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.053+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3de50482-fdf0-4920-91ce-cb3655f6815b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.05,
            "x": 0.05,
            "y": 0.35
          },
          "kind": "legend",
          "text": "Next 8, Shein, Amazon",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.053+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ae2d0cf7-1fcd-48ea-9038-afe7fb2de3f6",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Mindshare",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:20+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9272-7580ee19a492",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Piper Sandler",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.053+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a4e1e46d-d20f-40cb-a830-d92cfd8d8713",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Shein captures US mindshare",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.053+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "954560fd-2dd7-47b6-9eae-d1c3ca9b95dd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.4,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "Now a major teenage online shopping brand",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.053+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a407a39b-a5c3-4726-862c-2a6172859a2b",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 74,
      "type": "analysis",
      "title": "The chart tracks market share for Shein, H&M, Zara, and Others.",
      "function": "analyze_data",
      "rawType": "market_landscape",
      "block": null,
      "metadata": {
        "slideType": "market_landscape",
        "slideTypeCanon": {
          "name": "Market landscape",
          "slug": "market_landscape",
          "status": "active",
          "canonId": "019de52d-0b6d-75db-a946-9ac362e3afc2",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 50,
        "componentCount": 7,
        "textChars": 272,
        "nDataPoints": 16,
        "notes": "The chart tracks market share for Shein, H&M, Zara, and Others.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_100pct",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:01.204+00",
          "seconds": 2.424,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/74",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-74",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "On some estimates, Shein is now the largest US fast fashion retailer",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-774664b166ba",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.55,
            "w": 0.605,
            "x": 0.201,
            "y": 0.265
          },
          "kind": "chart",
          "text": "US fast fashion market share",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart (100%)",
              "slug": "bar-stacked-100pct",
              "status": "active",
              "canonId": "019de52c-ff14-71b8-8d88-860f8d7da84b",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked-100pct",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.204+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4c6520a9-c2e3-4421-8a8a-75d1716e07c8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.135,
            "w": 0.075,
            "x": 0.028,
            "y": 0.345
          },
          "kind": "legend",
          "text": "Others, Zara, H&M, Shein",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.204+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9b0a19fa-0e39-4850-b0a9-9a804700194d",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "US fast fashion market share",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-784b46ae7d33",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.15,
            "x": 0.201,
            "y": 0.905
          },
          "kind": "source-note",
          "text": "Source: Earnest Research",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.204+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ef60ec92-53c1-4c38-85f1-5338e3dbb917",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.045,
            "w": 0.421,
            "x": 0.201,
            "y": 0.055
          },
          "kind": "title",
          "text": "Shein now leads US fast fashion?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.204+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cfdd87ff-4192-4f9e-91e0-467699e82fe8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.025,
            "w": 0.605,
            "x": 0.201,
            "y": 0.125
          },
          "kind": "title",
          "text": "On some estimates, Shein is now the largest US fast fashion retailer",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.204+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "565700c0-d322-4321-852e-b95a81c3e620",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-b0ddfa14cf4b",
          "evidence": "'On some estimates Shein is now the largest US fast-fashion retailer'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 74,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 75,
      "type": "analysis",
      "title": "The chart illustrates the cyclical nature of retail disruption, comparing the rise of ecommerce to previous retail shifts.",
      "function": "establish_context",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 47,
        "componentCount": 7,
        "textChars": 274,
        "nDataPoints": 3,
        "notes": "The chart illustrates the cyclical nature of retail disruption, comparing the rise of ecommerce to previous retail shifts.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:01.806+00",
          "seconds": 2.84,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/75",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-75",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Department stores were Amazon, once - this is another generational change",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-cc75ed6d3038",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.7,
            "x": 0.15,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Share of US retail sales",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.806+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "53a47118-3fcf-4822-9695-b9b3dcec8f03",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.1,
            "x": 0.05,
            "y": 0.35
          },
          "kind": "legend",
          "text": "Department stores; Superstores; Ecommerce",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.806+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c31fdf8c-ff6b-424f-9569-b6445dcc96b6",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Share of US retail sales",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-d13740467df5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.05,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: BLS",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.806+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0a8c9deb-d0db-436f-ae89-8a952f314bb6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.36,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "This has all happened before",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.806+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d889e8fb-7ba3-4b39-8d1e-c3941f0771c1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "Department stores were Amazon, once - this is another generational change",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.806+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "65c2a320-d6ed-4e70-a05b-4edd28d86bf4",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Argument from Analogy",
            "slug": "argument-from-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9e3d-7762-a994-72a2f7104e7c",
            "version": 1,
            "bodyDocId": null,
            "description": "Drawing conclusions based on similarities between situations",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-b736c7e20ac1",
          "evidence": "'Department stores were Amazon, once' historical parallel",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 75,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-b8aae572f269",
          "evidence": "Title 'This has all happened before' is the thesis",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 75,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 76,
      "type": "tension",
      "title": "The slide uses a rhetorical question to challenge the audience's assumptions about retail success.",
      "function": "frame_problem",
      "rawType": "thesis_headline",
      "block": null,
      "metadata": {
        "slideType": "thesis_headline",
        "slideTypeCanon": {
          "name": "Thesis headline",
          "slug": "thesis_headline",
          "status": "active",
          "canonId": "019de52d-073a-70cb-b9f6-772a597bb5af",
          "version": 1,
          "description": null
        },
        "function": "frame_problem",
        "functionCanon": {
          "name": "Frame problem",
          "slug": "frame_problem",
          "status": "active",
          "canonId": "019de52d-13db-753e-ad70-e9b2d0dab398",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 4,
        "componentCount": 2,
        "textChars": 79,
        "nDataPoints": 0,
        "notes": "The slide uses a rhetorical question to challenge the audience's assumptions about retail success.",
        "elementsJson": [
          "headline_text",
          "photo"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:01.416+00",
          "seconds": 2.439,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/76",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-76",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 1,
            "w": 0.5,
            "x": 0.5,
            "y": 0
          },
          "kind": "image",
          "text": "Photo of a closed Topshop storefront",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.416+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "480ba1bd-2c3d-46e0-94d7-16bfcb2c447e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.4,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "title",
          "text": "Is this about good tech? Or good retailing?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.416+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ee789fc8-526b-456e-9f13-8038ea9b237f",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Curiosity Gap",
            "slug": "curiosity-gap",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9703-74ef-8b85-96dfd8525025",
            "version": 1,
            "bodyDocId": null,
            "description": "People seek missing information - create open questions that demand resolution",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-bc6f8964250d",
          "evidence": "Title is a binary question: 'good tech? Or good retailing?'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 76,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 77,
      "type": "setup",
      "title": "The image appears to be a historical photograph of a large department store, likely Selfridges in London, used to evoke a sense of historical continuity or lega",
      "function": "transition",
      "rawType": "transition",
      "block": null,
      "metadata": {
        "slideType": "transition",
        "slideTypeCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-0693-7766-9f05-887f41f8e41e",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 3,
        "componentCount": 2,
        "textChars": 44,
        "nDataPoints": 0,
        "notes": "The image appears to be a historical photograph of a large department store, likely Selfridges in London, used to evoke a sense of historical continuity or legacy.",
        "elementsJson": [
          "headline_text",
          "photo"
        ],
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:01.621+00",
          "seconds": 2.503,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/77",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-77",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 1,
            "w": 0.5,
            "x": 0.5,
            "y": 0
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.621+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "808a99ea-17f1-416d-a91b-b9cf54ab59b2",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.4,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "title",
          "text": "Questions from 1995? Or questions from 1900?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.621+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "befc58d3-e915-4768-b49c-9937a2d9ad06",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Curiosity Gap",
            "slug": "curiosity-gap",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9703-74ef-8b85-96dfd8525025",
            "version": 1,
            "bodyDocId": null,
            "description": "People seek missing information - create open questions that demand resolution",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-c00cb159bdeb",
          "evidence": "Question forces choice: '1995 or 1900?'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 77,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Argument from Analogy",
            "slug": "argument-from-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9e3d-7762-a994-72a2f7104e7c",
            "version": 1,
            "bodyDocId": null,
            "description": "Drawing conclusions based on similarities between situations",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-c79faf98be0e",
          "evidence": "Drags in two precedent eras for comparison",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 77,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 78,
      "type": "setup",
      "title": "The chart highlights a disparity between digital-native banks (Revolut, Starling, Monzo) and traditional banks, suggesting that 'digital experience' is often a ",
      "function": "compare_peers",
      "rawType": "comparison_table",
      "block": null,
      "metadata": {
        "slideType": "comparison_table",
        "slideTypeCanon": {
          "name": "Comparison table",
          "slug": "comparison_table",
          "status": "active",
          "canonId": "019de52d-0a06-73f8-8813-fe022fab1de2",
          "version": 1,
          "description": null
        },
        "function": "compare_peers",
        "functionCanon": {
          "name": "Compare peers",
          "slug": "compare_peers",
          "status": "active",
          "canonId": "019de52d-1453-72ba-a367-9ba3d34c1630",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 53,
        "componentCount": 7,
        "textChars": 358,
        "nDataPoints": 9,
        "notes": "The chart highlights a disparity between digital-native banks (Revolut, Starling, Monzo) and traditional banks, suggesting that 'digital experience' is often a company-level operational issue rather than just a technology one.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_vertical"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:03.072+00",
          "seconds": 3.94,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/78",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-78",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Is a good 'digital' experience a digital problem, or a company problem?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-592257d7426a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.45,
            "w": 0.6,
            "x": 0.201,
            "y": 0.33
          },
          "kind": "chart",
          "text": "Bar chart showing taps required for Revolut, Starling, Monzo, Lloyds, Barclays, NatWest, Co-op, HSBC, First Direct",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.072+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "577a3c7e-3f74-44c1-85de-a2207c3b4c8a",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Taps to open account",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:17+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9270-5e29b9c1cdc6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.022,
            "w": 0.455,
            "x": 0.201,
            "y": 0.128
          },
          "kind": "paragraph",
          "text": "Is a good 'digital' experience a digital problem, or a company problem?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.072+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "09d881af-6a4a-41c6-8d74-218ae112505b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.204,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: Built for Mars",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.072+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7d2e6b1c-48d0-4254-8c3c-87c49a9e62c0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.042,
            "w": 0.155,
            "x": 0.201,
            "y": 0.055
          },
          "kind": "title",
          "text": "Is this tech?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.072+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7c6dcbf6-133a-43ca-8e86-6991fed4eb26",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.25,
            "x": 0.206,
            "y": 0.273
          },
          "kind": "title",
          "text": "Taps to open a new UK bank account online, 2020",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.072+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fe9dc077-1be0-49b8-b4bd-c4f248b39e93",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Curiosity Gap",
            "slug": "curiosity-gap",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9703-74ef-8b85-96dfd8525025",
            "version": 1,
            "bodyDocId": null,
            "description": "People seek missing information - create open questions that demand resolution",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-cb8ae89bdb2e",
          "evidence": "Callout 'Is a good digital experience a digital problem, or a company problem?'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 78,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "2x2 matrix",
            "slug": "matrix-2x2",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-50ab-72d1-8afb-3ab0a38e32a8",
            "version": 1,
            "bodyDocId": null,
            "description": "BCG matrix, importance/urgency, any axes-and-quadrants frame.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "e384a196-b48d-44f2-8c43-f9fe52d0600f",
          "evidence": "comparison_table",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:09.691767+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 78,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 79,
      "type": "analysis",
      "title": "The slide uses a central stacked bar chart representing costs, flanked by two large circles representing the functional areas of Logistics and Discovery.",
      "function": "frame_problem",
      "rawType": "market_landscape",
      "block": null,
      "metadata": {
        "slideType": "market_landscape",
        "slideTypeCanon": {
          "name": "Market landscape",
          "slug": "market_landscape",
          "status": "active",
          "canonId": "019de52d-0b6d-75db-a946-9ac362e3afc2",
          "version": 1,
          "description": null
        },
        "function": "frame_problem",
        "functionCanon": {
          "name": "Frame problem",
          "slug": "frame_problem",
          "status": "active",
          "canonId": "019de52d-13db-753e-ad70-e9b2d0dab398",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 61,
        "componentCount": 8,
        "textChars": 408,
        "nDataPoints": 4,
        "notes": "The slide uses a central stacked bar chart representing costs, flanked by two large circles representing the functional areas of Logistics and Discovery.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_stacked",
          "other"
        ],
        "confidence": 0.95,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:05.512+00",
          "seconds": 6.317,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/79",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-79",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "US brands & retailers spend $7-800bn to reach their customers - rent is the new CAC",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:19+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-3638ad9aa4e8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.5,
            "w": 0.1,
            "x": 0.53,
            "y": 0.24
          },
          "kind": "chart",
          "text": "Retail rents $300bn+, Shipping $130bn, Marketing $200bn, Advertising $200bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:05.512+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "31e60c51-53ff-4a67-8033-bfb28b8a3b70",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.25,
            "x": 0.2,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Logistics 'How do I get it?'",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "other",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:05.512+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "421fb583-5d52-4360-8719-459d0c11c948",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.25,
            "x": 0.75,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Discovery 'What do I want?'",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "other",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:05.512+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "afed5d53-5301-4247-830a-75579449e290",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Customer Acquisition Cost: $800bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:19+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-38435ab341b0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.3,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Pitney Bowes, Zenith, Costar, US Census",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:05.512+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c5807f00-81b6-4e1c-8890-e8bf1cee93a6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.45,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "How do you serve your customers?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:05.512+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f45046a6-4146-4872-9f1f-57bc9d69296e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "US brands & retailers spend $7-800bn to reach their customers - rent is the new CAC",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:05.512+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5594bc81-39a9-4565-9978-bde93b5fd34f",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-d2ff9cc6a63b",
          "evidence": "$7-800bn US brand+retail customer-acquisition spend",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 79,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Market Segmentation Pyramid",
            "slug": "market-segmentation-pyramid",
            "status": "active",
            "bestFor": null,
            "canonId": "1c9f3543-c96f-4a5b-b4a4-9b2a412c0aaf",
            "version": 1,
            "bodyDocId": null,
            "description": null,
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "b8aa665a-b310-4718-99eb-091f7e5b0cc1",
          "evidence": "market_landscape",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:59:09.767715+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 79,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-ce3f3699174d",
          "evidence": "'Rent is the new CAC' is a coined metaphor",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 79,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 79,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "Deeper Layer",
          "beatId": "019dd95a-07a7-7579-bd64-d7c61d74da23",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Deeper Layer",
            "slug": "onion-deeper-layer",
            "status": "active",
            "canonId": "019dd9b8-0c69-7473-8222-610daa3e4df7",
            "version": 1,
            "description": null
          },
          "evidence": "Past section reveals the actual disruption mechanic — unbundling of media + retail",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Development",
            "slug": "development",
            "status": "active",
            "canonId": "019dd9b8-0332-7008-b3aa-11b0840a57b1",
            "version": 1,
            "description": "The middle stretch in arcs that have one. Often where length problems creep in."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 79,
          "from": 59,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-47b44c686f70",
          "evidence": "Lockdown pull-forward → 40% UK online → Amazon shipping → Shopify $160bn → Shein → 'rent is the new CAC' synthesis",
          "position": 6,
          "objective": "Stack retail-disruption data points into a cumulative case",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 80,
      "type": "setup",
      "function": "transition",
      "rawType": "section_divider",
      "block": null,
      "metadata": {
        "slideType": "section_divider",
        "slideTypeCanon": {
          "name": "Section divider",
          "slug": "section_divider",
          "status": "active",
          "canonId": "019de52d-066a-7402-9554-6ae504999041",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 0,
        "componentCount": 1,
        "textChars": 10,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:00.832+00",
          "seconds": 1.512,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/80",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-80",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.054,
            "w": 0.245,
            "x": 0.203,
            "y": 0.278
          },
          "kind": "title",
          "text": "Conclusion",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:00.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fbfef571-4d41-4238-8bfa-81821a9278dd",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 87,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 80,
          "name": "Core Insight",
          "beatId": "019dd95a-07a7-7579-bd64-db757eda7dc4",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Core Insight",
            "slug": "onion-core-insight",
            "status": "active",
            "canonId": "019dd9b8-0d41-766a-8ad4-4ba6c6e72446",
            "version": 1,
            "description": null
          },
          "evidence": "Conclusion: platform leverage + tech expanding TAM from $90bn books to $50tr consumer",
          "position": 4,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Turn",
            "slug": "turn",
            "status": "active",
            "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
            "version": 1,
            "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 81,
      "type": "appendix",
      "title": "The slide uses a bubble chart to represent a collection of miscellaneous topics.",
      "function": "appendix",
      "rawType": "appendix",
      "block": null,
      "metadata": {
        "slideType": "appendix",
        "slideTypeCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-0762-71f8-b564-89ab863301cc",
          "version": 1,
          "description": null
        },
        "function": "appendix",
        "functionCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-138d-750b-83c3-49b4bc7a7a38",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 22,
        "componentCount": 4,
        "textChars": 330,
        "nDataPoints": 0,
        "notes": "The slide uses a bubble chart to represent a collection of miscellaneous topics.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "other"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:03.847+00",
          "seconds": 4.511,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/81",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-81",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "When software eats the world, everything becomes a software question",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:19+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-5149bde20576",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.6,
            "x": 0.2,
            "y": 0.2
          },
          "kind": "chart",
          "text": "Bubble chart showing topics: Advertising, Privacy, Frontier AI, Local delivery, Remote work, China, Moral panics, Regulation, Semiconductors, Splinternets, M&A, Security",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Bubble chart",
              "slug": "bubble",
              "status": "active",
              "canonId": "019de52d-00a4-756f-8978-8d5e48905dbc",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bubble",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.847+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ca0338e7-733a-4554-bd97-b87edcced19a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.5,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "When software eats the world, everything becomes a software question",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.847+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0af48fdd-e802-46cb-b980-e6b493519f09",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "All the things I left out",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.847+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2419ff7e-953f-490f-9d38-efbcb616df75",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-d71598857d70",
          "evidence": "Callout invokes Andreessen 'software eats the world'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 81,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 87,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 80,
          "name": "Core Insight",
          "beatId": "019dd95a-07a7-7579-bd64-db757eda7dc4",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Core Insight",
            "slug": "onion-core-insight",
            "status": "active",
            "canonId": "019dd9b8-0d41-766a-8ad4-4ba6c6e72446",
            "version": 1,
            "description": null
          },
          "evidence": "Conclusion: platform leverage + tech expanding TAM from $90bn books to $50tr consumer",
          "position": 4,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Turn",
            "slug": "turn",
            "status": "active",
            "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
            "version": 1,
            "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 82,
      "type": "setup",
      "function": "transition",
      "rawType": "transition",
      "block": null,
      "metadata": {
        "slideType": "transition",
        "slideTypeCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-0693-7766-9f05-887f41f8e41e",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 32,
        "componentCount": 6,
        "textChars": 239,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "other"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:01.725+00",
          "seconds": 2.306,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/82",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-82",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "While tech builds the future, industries in its wake try to adjust",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:19+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-7f6a4f187d19",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.2,
            "x": 0.7,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Old economy adjusts to tech disruption",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "other",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.725+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "72f76933-7a61-4c96-86f4-73d675f0f555",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.2,
            "x": 0.45,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Building tech startups today",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "other",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.725+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9bcdc8d2-6308-491b-9391-377b524d9039",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.2,
            "x": 0.2,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Tech dreams for 2030",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "other",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.725+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cb240399-03bc-4a43-a73f-702f4fc49a13",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.4,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "While tech builds the future, industries in its wake try to adjust",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.725+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0bc7bf96-246b-496e-a7bf-5967a7f69d9d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Past, future, present",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:01.725+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ce287174-b6a1-4ba0-bea6-b888bcf333ea",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Callback",
            "slug": "callback",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-a3a9-708f-b4a3-d3da2181c576",
            "version": 1,
            "bodyDocId": null,
            "description": "Referencing earlier content for payoff and cohesion",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "loop",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-dbe13abc9f3c",
          "evidence": "Title 'Past, future, present' callback to opening three-pillar roadmap",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 82,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 87,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 80,
          "name": "Core Insight",
          "beatId": "019dd95a-07a7-7579-bd64-db757eda7dc4",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Core Insight",
            "slug": "onion-core-insight",
            "status": "active",
            "canonId": "019dd9b8-0d41-766a-8ad4-4ba6c6e72446",
            "version": 1,
            "description": null
          },
          "evidence": "Conclusion: platform leverage + tech expanding TAM from $90bn books to $50tr consumer",
          "position": 4,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Turn",
            "slug": "turn",
            "status": "active",
            "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
            "version": 1,
            "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 83,
      "type": "analysis",
      "title": "The chart illustrates the industry disruption caused by the internet, showing the transition from physical sales to digital streaming.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 42,
        "componentCount": 6,
        "textChars": 266,
        "nDataPoints": 21,
        "notes": "The chart illustrates the industry disruption caused by the internet, showing the transition from physical sales to digital streaming.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "area_chart",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:07.34+00",
          "seconds": 7.868,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/83",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-83",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.6,
            "w": 0.7,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Global recorded music revenue ($bn, 2020 dollars)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked area chart",
              "slug": "area-stacked",
              "status": "active",
              "canonId": "019de52c-ffb1-75fa-a614-76782f418cf1",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "area-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:07.34+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "02438db8-55fb-4347-ba4b-7d741676f44b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.1,
            "x": 0.03,
            "y": 0.35
          },
          "kind": "legend",
          "text": "Streaming, Downloads, Synch, Performance, Physical",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:07.34+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "132fe16b-9af6-4620-8ff3-712a2c987a52",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Global recorded music revenue: $20bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:19+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-1bc570a77d67",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: IFPI, BLS",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:07.34+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "39570f0f-e15b-483f-b695-827e23cfb5fd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.5,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "Music was one of the first industries to be overturned by the internet - how's it doing?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:07.34+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f2d1d822-0d94-45d8-b3ca-edb645174b9a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "The fall and rise of music",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:07.34+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "48dc590c-167d-4401-bf1a-b324ee8665ac",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 87,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 80,
          "name": "Core Insight",
          "beatId": "019dd95a-07a7-7579-bd64-db757eda7dc4",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Core Insight",
            "slug": "onion-core-insight",
            "status": "active",
            "canonId": "019dd9b8-0d41-766a-8ad4-4ba6c6e72446",
            "version": 1,
            "description": null
          },
          "evidence": "Conclusion: platform leverage + tech expanding TAM from $90bn books to $50tr consumer",
          "position": 4,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Turn",
            "slug": "turn",
            "status": "active",
            "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
            "version": 1,
            "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 93,
          "from": 83,
          "loop": {
            "name": "28_ladder_abstraction",
            "slug": "28-ladder-abstraction",
            "status": "active",
            "bestFor": "Training, thought leadership, making complex ideas accessible",
            "canonId": "019dd956-7130-74be-a168-9f76c603044d",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Concrete Example -> The Pattern It Represents -> The Universal Principle -> Back to Specific Application",
            "description": "Move between concrete examples and abstract principles to make ideas stick",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-4b7640f24877",
          "evidence": "Concrete Apple > music+Netflix → platform leverage → $50tr TAM ladder (p87) → Tesla valuation = entire car industry",
          "position": 7,
          "objective": "Climb from concrete music numbers to the universal principle that tech now competes with whole industries",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 84,
      "type": "setup",
      "title": "The chart uses a stacked bar for Apple to show the composition of its platform rent revenue.",
      "function": "compare_options",
      "rawType": "comparison_table",
      "block": null,
      "metadata": {
        "slideType": "comparison_table",
        "slideTypeCanon": {
          "name": "Comparison table",
          "slug": "comparison_table",
          "status": "active",
          "canonId": "019de52d-0a06-73f8-8813-fe022fab1de2",
          "version": 1,
          "description": null
        },
        "function": "compare_options",
        "functionCanon": {
          "name": "Compare options",
          "slug": "compare_options",
          "status": "active",
          "canonId": "019de52d-167f-7038-aebc-70a9d2e0e33b",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 29,
        "componentCount": 5,
        "textChars": 235,
        "nDataPoints": 4,
        "notes": "The chart uses a stacked bar for Apple to show the composition of its platform rent revenue.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_vertical",
          "bar_chart_stacked",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:02.364+00",
          "seconds": 2.724,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/84",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-84",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.5,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Annual revenue* ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.364+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e76656ee-9ea0-41ef-abc8-95404cee8525",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Annual revenue: $29bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:23+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9273-19fa8443738f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: IFPI, Netflix, Apple, DoJ\n*2020 for music, September 2021 TTM for others",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.364+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4a23452d-a82c-4f57-9e7d-e68e89ac1033",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "Apple makes more from platform rents than the entire global music industry, or Netflix",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.364+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "08b834cc-5470-4011-b725-8d03f6a25b99",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.35,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "The scale of platform rents",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.364+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a612af5c-6998-4b4e-a829-4c5cdc028eaa",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-e1196fc8c04f",
          "evidence": "Title is the comparative claim itself",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 84,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-dfccd10840ba",
          "evidence": "Title quantifies: Apple platform rents > music industry, > Netflix",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 84,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 87,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 80,
          "name": "Core Insight",
          "beatId": "019dd95a-07a7-7579-bd64-db757eda7dc4",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Core Insight",
            "slug": "onion-core-insight",
            "status": "active",
            "canonId": "019dd9b8-0d41-766a-8ad4-4ba6c6e72446",
            "version": 1,
            "description": null
          },
          "evidence": "Conclusion: platform leverage + tech expanding TAM from $90bn books to $50tr consumer",
          "position": 4,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Turn",
            "slug": "turn",
            "status": "active",
            "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
            "version": 1,
            "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 93,
          "from": 83,
          "loop": {
            "name": "28_ladder_abstraction",
            "slug": "28-ladder-abstraction",
            "status": "active",
            "bestFor": "Training, thought leadership, making complex ideas accessible",
            "canonId": "019dd956-7130-74be-a168-9f76c603044d",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Concrete Example -> The Pattern It Represents -> The Universal Principle -> Back to Specific Application",
            "description": "Move between concrete examples and abstract principles to make ideas stick",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-4b7640f24877",
          "evidence": "Concrete Apple > music+Netflix → platform leverage → $50tr TAM ladder (p87) → Tesla valuation = entire car industry",
          "position": 7,
          "objective": "Climb from concrete music numbers to the universal principle that tech now competes with whole industries",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 85,
      "type": "setup",
      "title": "The chart highlights the scale of Apple's ecosystem revenue compared to other media/entertainment benchmarks.",
      "function": "compare_options",
      "rawType": "competitive_analysis",
      "block": null,
      "metadata": {
        "slideType": "competitive_analysis",
        "slideTypeCanon": {
          "name": "Competitive analysis",
          "slug": "competitive_analysis",
          "status": "active",
          "canonId": "019de52d-093e-776b-94c6-c1573f5f1a31",
          "version": 1,
          "description": null
        },
        "function": "compare_options",
        "functionCanon": {
          "name": "Compare options",
          "slug": "compare_options",
          "status": "active",
          "canonId": "019de52d-167f-7038-aebc-70a9d2e0e33b",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 42,
        "componentCount": 6,
        "textChars": 314,
        "nDataPoints": 6,
        "notes": "The chart highlights the scale of Apple's ecosystem revenue compared to other media/entertainment benchmarks.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_stacked"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:02.399+00",
          "seconds": 2.724,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/85",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-85",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Over $100bn in revenue from leveraging the platform and installed base",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:19+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-64800db774e6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.65,
            "x": 0.18,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Annual revenue ($bn) comparison across four categories",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.399+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c14edb77-a16b-4111-9e48-30e52b5d299f",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Annual revenue: $100bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:19+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-68d7d44b5578",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: IFPI, Netflix, Apple, DoJ; *2020 for music, September 2021 TTM for others",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.399+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c2e06736-3317-4643-8a12-512de3001630",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.5,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "Over $100bn in revenue from leveraging the platform and installed base",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.399+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6f7b9868-b7f6-4bc0-93ec-1a8cd3835cd9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.25,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Platform leverage",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.399+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "458575e7-fd89-4911-9f20-b75db71c1955",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-e73be2ab36d1",
          "evidence": "'Over $100bn in revenue from leveraging the platform'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 85,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 87,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 80,
          "name": "Core Insight",
          "beatId": "019dd95a-07a7-7579-bd64-db757eda7dc4",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Core Insight",
            "slug": "onion-core-insight",
            "status": "active",
            "canonId": "019dd9b8-0d41-766a-8ad4-4ba6c6e72446",
            "version": 1,
            "description": null
          },
          "evidence": "Conclusion: platform leverage + tech expanding TAM from $90bn books to $50tr consumer",
          "position": 4,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Turn",
            "slug": "turn",
            "status": "active",
            "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
            "version": 1,
            "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 93,
          "from": 83,
          "loop": {
            "name": "28_ladder_abstraction",
            "slug": "28-ladder-abstraction",
            "status": "active",
            "bestFor": "Training, thought leadership, making complex ideas accessible",
            "canonId": "019dd956-7130-74be-a168-9f76c603044d",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Concrete Example -> The Pattern It Represents -> The Universal Principle -> Back to Specific Application",
            "description": "Move between concrete examples and abstract principles to make ideas stick",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-4b7640f24877",
          "evidence": "Concrete Apple > music+Netflix → platform leverage → $50tr TAM ladder (p87) → Tesla valuation = entire car industry",
          "position": 7,
          "objective": "Climb from concrete music numbers to the universal principle that tech now competes with whole industries",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 86,
      "type": "setup",
      "title": "The chart uses stacked bars for Apple segments and simple bars for industry benchmarks.",
      "function": "compare_options",
      "rawType": "comparison_table",
      "block": null,
      "metadata": {
        "slideType": "comparison_table",
        "slideTypeCanon": {
          "name": "Comparison table",
          "slug": "comparison_table",
          "status": "active",
          "canonId": "019de52d-0a06-73f8-8813-fe022fab1de2",
          "version": 1,
          "description": null
        },
        "function": "compare_options",
        "functionCanon": {
          "name": "Compare options",
          "slug": "compare_options",
          "status": "active",
          "canonId": "019de52d-167f-7038-aebc-70a9d2e0e33b",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 40,
        "componentCount": 6,
        "textChars": 283,
        "nDataPoints": 5,
        "notes": "The chart uses stacked bars for Apple segments and simple bars for industry benchmarks.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_stacked",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:02.672+00",
          "seconds": 2.884,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/86",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-86",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Total Apple revenue is close to 20x recorded music",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:19+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-c4f991517eab",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Annual revenue ($bn) comparison chart",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.672+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c6809dd4-c8bc-4dbf-8446-c2d44429b081",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Annual revenue: $365bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:19+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-c853accef0f8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: IFPI, Netflix, Apple, DoJ. *2020 for music, September 2021 TTM for others",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.672+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5b206ebe-4f4a-462b-b2fe-aed516fb50c9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "How much does Apple care about music or TV?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.672+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8162ca58-b457-45d2-a6e5-77b3ddccae38",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.4,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "Total Apple revenue is close to 20x recorded music",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.672+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "27a84395-2ab2-41ba-b51a-78f48f0dd5e5",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-e96a0cd7f04c",
          "evidence": "'Total Apple revenue close to 20x recorded music'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 86,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 87,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 80,
          "name": "Core Insight",
          "beatId": "019dd95a-07a7-7579-bd64-db757eda7dc4",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Core Insight",
            "slug": "onion-core-insight",
            "status": "active",
            "canonId": "019dd9b8-0d41-766a-8ad4-4ba6c6e72446",
            "version": 1,
            "description": null
          },
          "evidence": "Conclusion: platform leverage + tech expanding TAM from $90bn books to $50tr consumer",
          "position": 4,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Turn",
            "slug": "turn",
            "status": "active",
            "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
            "version": 1,
            "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 93,
          "from": 83,
          "loop": {
            "name": "28_ladder_abstraction",
            "slug": "28-ladder-abstraction",
            "status": "active",
            "bestFor": "Training, thought leadership, making complex ideas accessible",
            "canonId": "019dd956-7130-74be-a168-9f76c603044d",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Concrete Example -> The Pattern It Represents -> The Universal Principle -> Back to Specific Application",
            "description": "Move between concrete examples and abstract principles to make ideas stick",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-4b7640f24877",
          "evidence": "Concrete Apple > music+Netflix → platform leverage → $50tr TAM ladder (p87) → Tesla valuation = entire car industry",
          "position": 7,
          "objective": "Climb from concrete music numbers to the universal principle that tech now competes with whole industries",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 87,
      "type": "resolution",
      "title": "The slide uses a linear progression of circles to illustrate the shift in tech focus toward larger total addressable markets.",
      "function": "size_opportunity",
      "rawType": "market_sizing",
      "block": null,
      "metadata": {
        "slideType": "market_sizing",
        "slideTypeCanon": {
          "name": "Market sizing",
          "slug": "market_sizing",
          "status": "active",
          "canonId": "019de52d-08c8-756c-8664-733b73a7ee7b",
          "version": 1,
          "description": null
        },
        "function": "size_opportunity",
        "functionCanon": {
          "name": "Size opportunity",
          "slug": "size_opportunity",
          "status": "active",
          "canonId": "019de52d-147b-7568-8828-a74a27697618",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 39,
        "componentCount": 6,
        "textChars": 274,
        "nDataPoints": 4,
        "notes": "The slide uses a linear progression of circles to illustrate the shift in tech focus toward larger total addressable markets.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "process_diagram"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:02.606+00",
          "seconds": 2.804,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/87",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-87",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Tech has gone from selling accounting tools to big companies to replacing those companies",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:20+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-ff0f7b440b99",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.6,
            "x": 0.2,
            "y": 0.35
          },
          "kind": "diagram",
          "text": "Progression of market sizes",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": {
              "name": "Process flow",
              "slug": "process",
              "status": "active",
              "canonId": "019de52d-039c-718f-ad3a-efe9c4b3c838",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "process",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.606+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ded23202-4a45-4dde-bb32-42610a65f26f",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "TAM: $50tr",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:20+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9272-0022de5b4d1d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "paragraph",
          "text": "Tech has gone from selling accounting tools to big companies to replacing those companies",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.606+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "52297fa2-342b-4620-8a5d-30625f19906f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.2,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: IFPI, PwC, World Bank",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.606+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5fbd8d94-e031-41d2-b6e5-0e8aca9b3ea8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Moving to bigger opportunities",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.606+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d0e33b81-9ca8-444d-bd30-9765743a82c4",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Build-Up (Gradatio)",
            "slug": "build-up-gradatio",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-a19a-73fd-9f74-c3f50dbb266d",
            "version": 1,
            "bodyDocId": null,
            "description": "Arranging ideas in ascending order of importance or intensity",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "loop",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-ef40823896f0",
          "evidence": "Four-step ladder of escalating $: $90bn books → $1tr ads → $20tr retail → $50tr consumer",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 87,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Causal Chain",
            "slug": "causal-chain",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9e98-7269-907b-8cf727e9499d",
            "version": 1,
            "bodyDocId": null,
            "description": "Showing how one event leads to another in sequence",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-f1cc914d5ac1",
          "evidence": "Arrow chain showing tech moving up TAM ladder",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 87,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-9339-f6f36169d088",
          "evidence": "Title 'Moving to bigger opportunities' captures the ladder",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 87,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        }
      ],
      "frameworks": [
        {
          "matchId": "527f9ac4-c6da-4537-8860-7e1ac89b69f6",
          "evidence": "Progression of market values from billions to trillions",
          "framework": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-05-02 17:38:02.606+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 87,
          "frameworkName": "market-sizing"
        },
        {
          "matchId": "019dd95a-1d21-7467-a468-873e54f24a23",
          "evidence": "Ascending TAM stages from $90bn (books) to $50tr (consumer spending)",
          "framework": null,
          "confidence": 60,
          "extraction": {
            "at": "2026-04-29 13:07:34.940444+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 87,
          "frameworkName": "TAM Expansion Ladder"
        }
      ],
      "arcBeats": [
        {
          "to": 87,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 80,
          "name": "Core Insight",
          "beatId": "019dd95a-07a7-7579-bd64-db757eda7dc4",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Core Insight",
            "slug": "onion-core-insight",
            "status": "active",
            "canonId": "019dd9b8-0d41-766a-8ad4-4ba6c6e72446",
            "version": 1,
            "description": null
          },
          "evidence": "Conclusion: platform leverage + tech expanding TAM from $90bn books to $50tr consumer",
          "position": 4,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Turn",
            "slug": "turn",
            "status": "active",
            "canonId": "019dd9b8-0396-702b-ac2f-9901f8dd8b54",
            "version": 1,
            "description": "The pivot — solution proposed, catalyst introduced, decision made. Common (15/20 arcs) but not universal: Triple-take, AIDA, PAS, Voyage-return and Pixar substitute it with a strong reflection or development beat."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 93,
          "from": 83,
          "loop": {
            "name": "28_ladder_abstraction",
            "slug": "28-ladder-abstraction",
            "status": "active",
            "bestFor": "Training, thought leadership, making complex ideas accessible",
            "canonId": "019dd956-7130-74be-a168-9f76c603044d",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Concrete Example -> The Pattern It Represents -> The Universal Principle -> Back to Specific Application",
            "description": "Move between concrete examples and abstract principles to make ideas stick",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-4b7640f24877",
          "evidence": "Concrete Apple > music+Netflix → platform leverage → $50tr TAM ladder (p87) → Tesla valuation = entire car industry",
          "position": 7,
          "objective": "Climb from concrete music numbers to the universal principle that tech now competes with whole industries",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 88,
      "type": "analysis",
      "title": "The chart highlights a significant surge in large-cap VC deals (over $50m) starting around 2017.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 48,
        "componentCount": 7,
        "textChars": 216,
        "nDataPoints": 24,
        "notes": "The chart highlights a significant surge in large-cap VC deals (over $50m) starting around 2017.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:05.455+00",
          "seconds": 5.259,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/88",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-88",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "A firehose of money into the tech startup ecosystem",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:20+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9272-3b6550525673",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.75,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "US VC deal activity ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:05.455+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ba85cc0a-3e07-4b1a-bec4-7f612eb43e0e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.1,
            "x": 0.05,
            "y": 0.35
          },
          "kind": "legend",
          "text": "Under $50m\nOver $50m",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:05.455+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "95ed6240-f212-4db2-8e6a-06f59c4f2b40",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "US VC deal activity ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:20+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9272-3e258b58abff",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.1,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: NVCA",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:05.455+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9aadd0fa-153c-4038-9632-abefbf212afd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "Unprecedented investment in tech",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:05.455+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d4b2d116-274c-4613-8303-bd5f6713a0f5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.4,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "A firehose of money into the tech startup ecosystem",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:05.455+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "059af438-57ab-4044-a401-9f87e440c841",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-1b83-7130-9339-fefaf76678fc",
          "evidence": "Investment trend chart",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 88,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-9339-fb13a33496f5",
          "evidence": "Callout 'firehose of money' visualises capital flow",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 88,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 94,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 88,
          "name": "Implications",
          "beatId": "019dd95a-07a7-7579-bd64-dcf3541fdcc9",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Implications",
            "slug": "onion-implications",
            "status": "active",
            "canonId": "019dd9b8-0dda-7730-893d-deaac7e9c295",
            "version": 1,
            "description": null
          },
          "evidence": "Investment firehose, Tesla > car industry valuation, second 50 years of tech",
          "position": 5,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 93,
          "from": 83,
          "loop": {
            "name": "28_ladder_abstraction",
            "slug": "28-ladder-abstraction",
            "status": "active",
            "bestFor": "Training, thought leadership, making complex ideas accessible",
            "canonId": "019dd956-7130-74be-a168-9f76c603044d",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Concrete Example -> The Pattern It Represents -> The Universal Principle -> Back to Specific Application",
            "description": "Move between concrete examples and abstract principles to make ideas stick",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-4b7640f24877",
          "evidence": "Concrete Apple > music+Netflix → platform leverage → $50tr TAM ladder (p87) → Tesla valuation = entire car industry",
          "position": 7,
          "objective": "Climb from concrete music numbers to the universal principle that tech now competes with whole industries",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 89,
      "type": "analysis",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 47,
        "componentCount": 6,
        "textChars": 362,
        "nDataPoints": 40,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "line_chart",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:03.069+00",
          "seconds": 2.823,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/89",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-89",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Tech investing now matches levels seen in the bubble, but based on reality rather than promise",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:19+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-a492221503b1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.5,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "chart",
          "text": "US tech venture investing ($bn, 2021 dollars)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.069+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5f23ee46-4759-49de-b672-b8622edbf4dd",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "US tech venture investing ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:19+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-a831412663bd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.4,
            "x": 0.2,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Capital IQ, Jay Ritter, University of Florida, NVCA, a16z, BLS",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.069+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2930e21f-5f97-4c76-af34-9f436da674b8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "(Well, almost unprecedented)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.069+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1786233e-388e-4a61-a3e5-975874320e6c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "title",
          "text": "Tech investing now matches levels seen in the bubble, but based on reality rather than promise",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.069+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a0b29baf-918d-4733-8b14-7bb94b0df0ca",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-1b83-7130-933a-027dde23acf2",
          "evidence": "Annotation puts current investment in dot-com-bubble context",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 89,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chartjunk Elimination",
            "slug": "chartjunk-elimination",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
            "version": 1,
            "bodyDocId": null,
            "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "38dcf3ed-ec15-4829-b10b-4f2bd5e65cc3",
          "evidence": "The slide features a line chart with a clear and simple design, indicating an effort to eliminate chartjunk.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:12.273669+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 89,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 94,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 88,
          "name": "Implications",
          "beatId": "019dd95a-07a7-7579-bd64-dcf3541fdcc9",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Implications",
            "slug": "onion-implications",
            "status": "active",
            "canonId": "019dd9b8-0dda-7730-893d-deaac7e9c295",
            "version": 1,
            "description": null
          },
          "evidence": "Investment firehose, Tesla > car industry valuation, second 50 years of tech",
          "position": 5,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 93,
          "from": 83,
          "loop": {
            "name": "28_ladder_abstraction",
            "slug": "28-ladder-abstraction",
            "status": "active",
            "bestFor": "Training, thought leadership, making complex ideas accessible",
            "canonId": "019dd956-7130-74be-a168-9f76c603044d",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Concrete Example -> The Pattern It Represents -> The Universal Principle -> Back to Specific Application",
            "description": "Move between concrete examples and abstract principles to make ideas stick",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-4b7640f24877",
          "evidence": "Concrete Apple > music+Netflix → platform leverage → $50tr TAM ladder (p87) → Tesla valuation = entire car industry",
          "position": 7,
          "objective": "Climb from concrete music numbers to the universal principle that tech now competes with whole industries",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 90,
      "type": "evidence",
      "title": "The slide uses a screenshot of a blog post as a primary source of authority.",
      "function": "illustrate_case",
      "rawType": "client_example",
      "block": null,
      "metadata": {
        "slideType": "client_example",
        "slideTypeCanon": {
          "name": "Client example",
          "slug": "client_example",
          "status": "active",
          "canonId": "019de52d-0c87-77cb-9867-613ae22e95ac",
          "version": 1,
          "description": null
        },
        "function": "illustrate_case",
        "functionCanon": {
          "name": "Illustrate case",
          "slug": "illustrate_case",
          "status": "active",
          "canonId": "019de52d-13b4-772c-bb73-1873612a7463",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 45,
        "componentCount": 6,
        "textChars": 414,
        "nDataPoints": 1,
        "notes": "The slide uses a screenshot of a blog post as a primary source of authority.",
        "elementsJson": [
          "headline_text",
          "screenshot"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:05.373+00",
          "seconds": 4.625,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/90",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-90",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "We have been seeing quite a few seed rounds getting done in and around $100mm post-money and that concerns me for a few reasons.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:20+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-e20517f739b3",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.82,
            "w": 0.326,
            "x": 0.612,
            "y": 0.144
          },
          "kind": "image",
          "text": "Screenshot of AVC blog post by Fred Wilson",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Screenshot",
              "slug": "screenshot",
              "status": "active",
              "canonId": "019de52c-fd87-7509-8391-3d79fb339379",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "screenshot",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:05.373+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "edb501fe-f592-4a59-8f4d-d5bc0216961d",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "valuation: $100mm",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:20+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-e992fdc8f61a",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "quote",
          "text": "Seed stage is when a company has a good team, a good idea, but has not yet proven product market fit and a go to market model, and has not yet demonstrated a sustainable business model. — Fred Wilson",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Quote",
              "slug": "quote",
              "status": "active",
              "canonId": "019de52c-f8fb-751e-8bc6-d58e2d59562a",
              "version": 1,
              "description": "Pull quote or testimonial."
            },
            "tool": {
              "name": "Authority citation",
              "slug": "authority-citation",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-49ae-7557-89ad-3fca70469b45",
              "version": 1,
              "bodyDocId": null,
              "description": "Quoting an authority figure, study, or precedent to lend weight.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:20+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9271-e764ca7b79f6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.045,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: Fred Wilson",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:05.373+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "55b19483-ea6f-4b3e-86b5-bca569f0d4c4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.19,
            "x": 0.045,
            "y": 0.245
          },
          "kind": "title",
          "text": "Hot money",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:05.373+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b76cd638-e37b-42ef-bf6f-a408d4ef5de7",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Authority Bias",
            "slug": "authority-bias",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-c38d-70b9-a284-b2b479763356",
            "version": 1,
            "bodyDocId": null,
            "description": "Expert opinions are weighted more heavily - cite credible sources",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Architect",
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-933a-06dbf6571a22",
          "evidence": "Quote from VC about $100mm seed rounds borrows insider authority",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 90,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-933a-0a837d1691d0",
          "evidence": "Specific 'around $100mm post-money seed rounds' figure",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 90,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "7aea6820-68cd-403b-a37c-406e86b02979",
          "evidence": "Citing Fred Wilson's blog post to support the argument about seed round valuations.",
          "framework": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-05-02 17:38:05.373+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 90,
          "frameworkName": "authority-citation"
        }
      ],
      "arcBeats": [
        {
          "to": 94,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 88,
          "name": "Implications",
          "beatId": "019dd95a-07a7-7579-bd64-dcf3541fdcc9",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Implications",
            "slug": "onion-implications",
            "status": "active",
            "canonId": "019dd9b8-0dda-7730-893d-deaac7e9c295",
            "version": 1,
            "description": null
          },
          "evidence": "Investment firehose, Tesla > car industry valuation, second 50 years of tech",
          "position": 5,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 93,
          "from": 83,
          "loop": {
            "name": "28_ladder_abstraction",
            "slug": "28-ladder-abstraction",
            "status": "active",
            "bestFor": "Training, thought leadership, making complex ideas accessible",
            "canonId": "019dd956-7130-74be-a168-9f76c603044d",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Concrete Example -> The Pattern It Represents -> The Universal Principle -> Back to Specific Application",
            "description": "Move between concrete examples and abstract principles to make ideas stick",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-4b7640f24877",
          "evidence": "Concrete Apple > music+Netflix → platform leverage → $50tr TAM ladder (p87) → Tesla valuation = entire car industry",
          "position": 7,
          "objective": "Climb from concrete music numbers to the universal principle that tech now competes with whole industries",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 91,
      "type": "setup",
      "title": "The chart uses a single bar for Tesla and a stacked bar representing the top 10 OEMs.",
      "function": "compare_peers",
      "rawType": "comparison_table",
      "block": null,
      "metadata": {
        "slideType": "comparison_table",
        "slideTypeCanon": {
          "name": "Comparison table",
          "slug": "comparison_table",
          "status": "active",
          "canonId": "019de52d-0a06-73f8-8813-fe022fab1de2",
          "version": 1,
          "description": null
        },
        "function": "compare_peers",
        "functionCanon": {
          "name": "Compare peers",
          "slug": "compare_peers",
          "status": "active",
          "canonId": "019de52d-1453-72ba-a367-9ba3d34c1630",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 39,
        "componentCount": 6,
        "textChars": 294,
        "nDataPoints": 2,
        "notes": "The chart uses a single bar for Tesla and a stacked bar representing the top 10 OEMs.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "bar_chart_vertical",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:04.554+00",
          "seconds": 3.789,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/91",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-91",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Tesla's current valuation presumes it will capture more value than the entire global car industry",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:22+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9272-f9556d5fc1d7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.5,
            "w": 0.6,
            "x": 0.201,
            "y": 0.27
          },
          "kind": "chart",
          "text": "Enterprise value, September 2021 ($bn)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:04.554+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7dc7378b-b890-4cda-88ef-89f67edc1008",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Enterprise value: $1,250bn",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:22+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9272-ffbc9b363c65",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.09,
            "x": 0.201,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "Source: Bloomberg",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:04.554+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "068af189-3311-48e4-bdd5-93674b2dbd17",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.025,
            "w": 0.782,
            "x": 0.201,
            "y": 0.133
          },
          "kind": "title",
          "text": "Tesla's current valuation presumes it will capture more value than the entire global car industry",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:04.554+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3f0a2b90-880b-49a3-a6ef-5729f9deb024",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.044,
            "w": 0.282,
            "x": 0.201,
            "y": 0.055
          },
          "kind": "title",
          "text": "And some excitement",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:04.554+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5c260115-3093-4588-892e-e068d3c795bf",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-933a-10a7dd71d776",
          "evidence": "Title states the provocation directly",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 91,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Comparison frame",
            "slug": "comparison-frame",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-484b-7399-a4fc-d14644b99f93",
            "version": 1,
            "bodyDocId": null,
            "description": "Two or more states/subjects placed side by side to expose a gap.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "b8085599-90b9-4dbc-9f50-413912706622",
          "evidence": "The slide compares Tesla's valuation to the entire global car industry, using a comparison table.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:12.388577+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 91,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-933a-0e0bc49c732d",
          "evidence": "Title quantifies: Tesla valuation > entire global car industry",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 91,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 94,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 88,
          "name": "Implications",
          "beatId": "019dd95a-07a7-7579-bd64-dcf3541fdcc9",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Implications",
            "slug": "onion-implications",
            "status": "active",
            "canonId": "019dd9b8-0dda-7730-893d-deaac7e9c295",
            "version": 1,
            "description": null
          },
          "evidence": "Investment firehose, Tesla > car industry valuation, second 50 years of tech",
          "position": 5,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 93,
          "from": 83,
          "loop": {
            "name": "28_ladder_abstraction",
            "slug": "28-ladder-abstraction",
            "status": "active",
            "bestFor": "Training, thought leadership, making complex ideas accessible",
            "canonId": "019dd956-7130-74be-a168-9f76c603044d",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Concrete Example -> The Pattern It Represents -> The Universal Principle -> Back to Specific Application",
            "description": "Move between concrete examples and abstract principles to make ideas stick",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-4b7640f24877",
          "evidence": "Concrete Apple > music+Netflix → platform leverage → $50tr TAM ladder (p87) → Tesla valuation = entire car industry",
          "position": 7,
          "objective": "Climb from concrete music numbers to the universal principle that tech now competes with whole industries",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 92,
      "type": "analysis",
      "title": "The slide uses a series of S-curves to represent the diffusion of technology across different segments of society over time.",
      "function": "establish_context",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 22,
        "componentCount": 4,
        "textChars": 322,
        "nDataPoints": 0,
        "notes": "The slide uses a series of S-curves to represent the diffusion of technology across different segments of society over time.",
        "elementsJson": [
          "headline_text",
          "subtitle_text",
          "process_diagram"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:03.714+00",
          "seconds": 2.768,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/92",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-92",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Tech used to sell accounting tools to big companies - now it's part of our life",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:20+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9272-22a6f1dc5d85",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.6,
            "x": 0.2,
            "y": 0.2
          },
          "kind": "diagram",
          "text": "Mainframes (Big companies), PCs (All companies), Web (Middle-classes), Smartphones (Everyone), Systemically important part of society",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Diagram",
              "slug": "diagram",
              "status": "active",
              "canonId": "019de52c-f9f0-734a-81de-15382ff28c65",
              "version": 1,
              "description": "Schematic or relational diagram."
            },
            "tool": null,
            "subkind": {
              "name": "Timeline",
              "slug": "timeline",
              "status": "active",
              "canonId": "019de52d-03c5-73fc-84aa-4180cbf0f5cf",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "timeline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.714+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a241e64a-747a-4566-9246-278df734f803",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.5,
            "x": 0.2,
            "y": 0.12
          },
          "kind": "subtitle",
          "text": "Tech used to sell accounting tools to big companies - now it's part of our life",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "82d821ee-2793-42e7-8f16-c6131385a3ce",
              "version": 1,
              "description": "Header-zone supporting text near the title (= ex body.description with bbox)."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.714+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a62e2e98-bb95-4911-8409-cfb03b711a12",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.2,
            "y": 0.05
          },
          "kind": "title",
          "text": "First 50 years, second 50 years",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.714+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f3c1d6f5-16c8-4206-bd9e-81224579604b",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-933a-14d354d49d4b",
          "evidence": "Callout 'tech used to sell accounting tools to big companies — now it's part of our life'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 92,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        }
      ],
      "frameworks": [
        {
          "matchId": "db3002aa-c99c-4654-ad2c-4729620427ec",
          "evidence": "The slide depicts the progression of technology through different user segments over time.",
          "framework": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-05-02 17:38:03.714+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 92,
          "frameworkName": "Technology Adoption Lifecycle"
        }
      ],
      "arcBeats": [
        {
          "to": 94,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 88,
          "name": "Implications",
          "beatId": "019dd95a-07a7-7579-bd64-dcf3541fdcc9",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Implications",
            "slug": "onion-implications",
            "status": "active",
            "canonId": "019dd9b8-0dda-7730-893d-deaac7e9c295",
            "version": 1,
            "description": null
          },
          "evidence": "Investment firehose, Tesla > car industry valuation, second 50 years of tech",
          "position": 5,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 93,
          "from": 83,
          "loop": {
            "name": "28_ladder_abstraction",
            "slug": "28-ladder-abstraction",
            "status": "active",
            "bestFor": "Training, thought leadership, making complex ideas accessible",
            "canonId": "019dd956-7130-74be-a168-9f76c603044d",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Concrete Example -> The Pattern It Represents -> The Universal Principle -> Back to Specific Application",
            "description": "Move between concrete examples and abstract principles to make ideas stick",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-4b7640f24877",
          "evidence": "Concrete Apple > music+Netflix → platform leverage → $50tr TAM ladder (p87) → Tesla valuation = entire car industry",
          "position": 7,
          "objective": "Climb from concrete music numbers to the universal principle that tech now competes with whole industries",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 93,
      "type": "setup",
      "title": "Uses a historical illustration of a Sears store to frame a question about value capture in the automotive era.",
      "function": "establish_context",
      "rawType": "transition",
      "block": null,
      "metadata": {
        "slideType": "transition",
        "slideTypeCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-0693-7766-9f05-887f41f8e41e",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 46,
        "componentCount": 6,
        "textChars": 445,
        "nDataPoints": 1,
        "notes": "Uses a historical illustration of a Sears store to frame a question about value capture in the automotive era.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "photo",
          "footnote"
        ],
        "confidence": 0.95,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:03.844+00",
          "seconds": 2.849,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/93",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-93",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "But who made more from the deployment of cars, and who made more from car-commerce - Detroit, or retailers?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:20+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9272-5669d17afc4e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 1,
            "w": 0.52,
            "x": 0.48,
            "y": 0
          },
          "kind": "image",
          "text": "Historical illustration of a Sears department store with a large parking lot.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.844+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3cc54ec9-3de3-4506-98a2-3f38cb4a53e3",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Fortune 500 earnings share: 20%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:10:20+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-4e52-728e-9272-5824f39f849e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.4,
            "x": 0.05,
            "y": 0.3
          },
          "kind": "paragraph",
          "text": "GM, Ford and Chrysler were 20% of Fortune 500 earnings in the late 1950s. But who made more from the deployment of cars, and who made more from car-commerce - Detroit, or retailers?",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.844+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d369af02-8f5c-45ba-8135-841fd897ed89",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.15,
            "x": 0.05,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Source: Sears, Roebuck",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.844+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b420be65-9178-4bc0-a16c-9afb858d09d9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.05,
            "y": 0.2
          },
          "kind": "title",
          "text": "The last time this happened",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:03.844+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "88e05853-1684-4590-9f63-7424ab870f65",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Curiosity Gap",
            "slug": "curiosity-gap",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9703-74ef-8b85-96dfd8525025",
            "version": 1,
            "bodyDocId": null,
            "description": "People seek missing information - create open questions that demand resolution",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-933a-1a86f73e8953",
          "evidence": "Closing question: 'Detroit, or retailers?' forces audience inference",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 93,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Argument from Analogy",
            "slug": "argument-from-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9e3d-7762-a994-72a2f7104e7c",
            "version": 1,
            "bodyDocId": null,
            "description": "Drawing conclusions based on similarities between situations",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-1b83-7130-933a-1df129568e5e",
          "evidence": "Auto-industry precedent applied to tech-vs-deployers question",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 93,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Analytical method",
            "slug": "analytical-method",
            "status": "active",
            "bestFor": null,
            "canonId": "b42c4911-7946-49b5-951c-5f3d23f4e2bd",
            "version": 1,
            "bodyDocId": null,
            "description": "Diagnostic / structuring methods (5-whys, fishbone, issue tree, hypothesis-driven).",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "3bce57fc-ffe7-48ee-8074-e00e0dea54fd",
          "evidence": "The slide uses an analytical approach to compare the earnings of GM, Ford, and Chrysler to the deployment of cars and car-commerce.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:59:12.500065+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 93,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Closing Techniques",
            "slug": "closing-techniques",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-af13-774b-a4fd-7db0a3a88d51",
            "version": 1,
            "bodyDocId": null,
            "description": "Strong endings: Callback, challenge, vision, clear CTA, memorable line",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-1b83-7130-933a-229882a37006",
          "evidence": "Penultimate slide closes with rhetorical question",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:34.53104+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 93,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 94,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 88,
          "name": "Implications",
          "beatId": "019dd95a-07a7-7579-bd64-dcf3541fdcc9",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Implications",
            "slug": "onion-implications",
            "status": "active",
            "canonId": "019dd9b8-0dda-7730-893d-deaac7e9c295",
            "version": 1,
            "description": null
          },
          "evidence": "Investment firehose, Tesla > car industry valuation, second 50 years of tech",
          "position": 5,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [
        {
          "to": 93,
          "from": 83,
          "loop": {
            "name": "28_ladder_abstraction",
            "slug": "28-ladder-abstraction",
            "status": "active",
            "bestFor": "Training, thought leadership, making complex ideas accessible",
            "canonId": "019dd956-7130-74be-a168-9f76c603044d",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Concrete Example -> The Pattern It Represents -> The Universal Principle -> Back to Specific Application",
            "description": "Move between concrete examples and abstract principles to make ideas stick",
            "familyLabel": null
          },
          "matchId": "019dd95a-08f8-7619-ac2e-4b7640f24877",
          "evidence": "Concrete Apple > music+Netflix → platform leverage → $50tr TAM ladder (p87) → Tesla valuation = entire car industry",
          "position": 7,
          "objective": "Climb from concrete music numbers to the universal principle that tech now competes with whole industries",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:29.779839+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 94,
      "type": "setup",
      "function": "summarize",
      "rawType": "closing_ask",
      "block": null,
      "metadata": {
        "slideType": "closing_ask",
        "slideTypeCanon": {
          "name": "Closing ask",
          "slug": "closing_ask",
          "status": "active",
          "canonId": "019de52d-0aa4-750f-8aa1-8d622dd99f5c",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 3,
        "componentCount": 2,
        "textChars": 54,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 17:38:02.952+00",
          "seconds": 1.798,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5e88-73ef-bd5d-80806e6b958f/94",
        "deck": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f",
        "deckAnchor": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f#slide-94",
        "deckJson": "/decks/019dd923-5e88-73ef-bd5d-80806e6b958f.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.078,
            "w": 0.155,
            "x": 0.202,
            "y": 0.658
          },
          "kind": "paragraph",
          "text": "Benedict Evans\nJanuary 2022\nwww.ben-evans.com",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.952+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3b076ece-d56e-49d1-97bb-033f4c546d63",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.238,
            "x": 0.202,
            "y": 0.275
          },
          "kind": "title",
          "text": "Thank you",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 17:38:02.952+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "982c7aef-7626-4c0e-86ca-b4020714997e",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Storytelling: the closing ask",
            "slug": "closing-ask",
            "status": "active",
            "bestFor": null,
            "canonId": "019df269-24e0-70ab-8dd9-983832c1c665",
            "version": 1,
            "bodyDocId": "019df269-24bc-7554-b88d-245127606b8d",
            "description": "The single most important slide in the deck — after the cover. The final",
            "familyLabel": "narrative-block",
            "categoryName": "Narrative & Transformation",
            "categorySlug": "narrative-transformation"
          },
          "agent": "storyteller",
          "layer": "slide",
          "agents": [
            "storyteller"
          ],
          "matchId": "666cc8e3-350e-4a14-b099-70c3e4503af8",
          "evidence": "The slide is a closing ask slide with a clear call to action, featuring a thank you note.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 21:59:12.573281+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 94,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 94,
          "arc": {
            "name": "The Onion",
            "slug": "onion",
            "status": "active",
            "bestFor": "Root cause analysis, diagnostics",
            "canonId": "019dd956-627f-76b1-b286-0c575846d572",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Surface Observation -> First Layer -> Deeper Layer -> Core Insight -> Implications",
            "description": null,
            "familyLabel": null
          },
          "from": 88,
          "name": "Implications",
          "beatId": "019dd95a-07a7-7579-bd64-dcf3541fdcc9",
          "matchId": "019dd95a-0543-7581-99b3-4453c309370c",
          "beatType": {
            "name": "Implications",
            "slug": "onion-implications",
            "status": "active",
            "canonId": "019dd9b8-0dda-7730-893d-deaac7e9c295",
            "version": 1,
            "description": null
          },
          "evidence": "Investment firehose, Tesla > car industry valuation, second 50 years of tech",
          "position": 5,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 70
        },
        {
          "to": 94,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 49,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a7-7579-bd64-e92c55e01c88",
          "matchId": "019dd95a-0543-7581-99b3-4bb5b21736ae",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Past + conclusion: apply unbundling pattern to predict winners",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 60
        }
      ],
      "loops": [],
      "locked": true
    }
  ],
  "arcBeats": [
    {
      "from": 1,
      "to": 34,
      "label": "Surface Observation",
      "description": "Future-section opens with Web3 + metaverse hype (the surface story everyone debates)"
    },
    {
      "from": 35,
      "to": 48,
      "label": "First Layer",
      "description": "Present section reveals quieter reality: cloud is only 10-15% deployed"
    },
    {
      "from": 49,
      "to": 79,
      "label": "Deeper Layer",
      "description": "Past section reveals the actual disruption mechanic — unbundling of media + retail"
    },
    {
      "from": 80,
      "to": 87,
      "label": "Core Insight",
      "description": "Conclusion: platform leverage + tech expanding TAM from $90bn books to $50tr consumer"
    },
    {
      "from": 88,
      "to": 94,
      "label": "Implications",
      "description": "Investment firehose, Tesla > car industry valuation, second 50 years of tech"
    }
  ],
  "loops": [
    {
      "from": 7,
      "to": 19,
      "label": "Pattern Hunter",
      "description": "Frame Web3 as real-but-ambiguous via converging data points"
    },
    {
      "from": 20,
      "to": 28,
      "label": "Pattern Hunter",
      "description": "Stress-test the metaverse thesis against actual traction"
    },
    {
      "from": 29,
      "to": 34,
      "label": "Precedent",
      "description": "Use mobile/AI/web history to calibrate expectations on tech timing"
    },
    {
      "from": 36,
      "to": 48,
      "label": "Aha Moment",
      "description": "Reveal cloud + SaaS as a step-change in software opportunity"
    },
    {
      "from": 50,
      "to": 58,
      "label": "Domino Effect",
      "description": "Show the same internet trigger toppling music, newspapers, then TV"
    },
    {
      "from": 59,
      "to": 79,
      "label": "Pattern Hunter",
      "description": "Stack retail-disruption data points into a cumulative case"
    },
    {
      "from": 83,
      "to": 93,
      "label": "Ladder Abstraction",
      "description": "Climb from concrete music numbers to the universal principle that tech now competes with whole industries"
    }
  ]
}