{
  "schemaVersion": "deck-intelligence.v1",
  "id": "019de06f-a937-74e5-a93a-c869a1890818",
  "slug": "db1818cdab816d6807094fc88536c9a2",
  "title": "Roblox | Product Presentation Deck | 29 slides",
  "subtitle": "Roblox · 2018-07",
  "author": "Roblox",
  "date": "2018-07-01 00:00:00",
  "pageCount": 29,
  "kind": "conference-presentation",
  "orientation": "landscape",
  "aspectRatio": 1.7927171,
  "document": {
    "id": "019de06f-a937-74e5-a93a-c869a1890818",
    "slug": "db1818cdab816d6807094fc88536c9a2",
    "title": "Roblox | Product Presentation Deck | 29 slides",
    "rawTitle": "Roblox | Product Presentation Deck | 29 slides",
    "authorId": "roblox",
    "authorName": "Roblox",
    "authorDisplay": "Roblox",
    "kind": {
      "slug": "conference-presentation",
      "label": "Conference presentation"
    },
    "sourceType": {
      "slug": "investor_relations",
      "label": "Investor relations"
    },
    "fileName": "2018-07__roblox__product__db1818cd.pdf",
    "sourceUrl": "https://www.slidebook.io/company/roblox/presentation/db1818cdab816d6807094fc88536c9a2/",
    "sourceDate": "2018-01-01 00:00:00",
    "presentationDate": "2018-07-01 00:00:00",
    "ingestedAt": "2026-04-30 22:08:27.550036+00",
    "status": "ready",
    "pageCount": 29,
    "orientation": "landscape",
    "aspectRatio": 1.7927171,
    "targetCompany": null,
    "targetTicker": null,
    "metadata": {
      "corpus": "slidebook",
      "industry": "electronic-gaming-multimedia",
      "local_root": "/Users/miguelsuredasuau/Desktop/lalalalla/_scrape/slidebook/decks/2018-07__roblox__product__db1818cd",
      "image_width": 1920,
      "image_format": "jpg",
      "deck_type_raw": "Product Presentation Deck",
      "deck_type_slug": null,
      "source_url_pattern": "https://www.slidebook.io/company/{company_slug}/presentation/{deck_id}/"
    }
  },
  "coverage": {
    "pageCount": 29,
    "pagesIndexed": 29,
    "pagesWithImages": 29,
    "pagesWithMetadata": 29,
    "imageCoveragePct": 100,
    "metadataCoveragePct": 100,
    "componentCount": 106,
    "chartCount": 0,
    "metricSlides": 0,
    "toolMatches": 6,
    "documentToolMatches": 0,
    "frameworkMatches": 1,
    "arcMatches": 1,
    "beatMatches": 5,
    "loopMatches": 2,
    "patternMatches": 0,
    "storymakersMatch": false,
    "scoreAvailable": false,
    "reviewAvailable": false,
    "activistThesisAvailable": false,
    "pitchdeckMetadataAvailable": false,
    "pitchdeckProfileAvailable": false
  },
  "blocks": [],
  "matches": {
    "arcs": [
      {
        "arc": {
          "name": "The Consultant's Gambit",
          "slug": "consultants-gambit",
          "status": "active",
          "bestFor": "Business cases, project proposals, strategic recommendations",
          "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
        "evidence": "The deck follows a logical structure, starting with an introduction, then moving to key challenges, and finally presenting solutions.",
        "isPrimary": true,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 22:07:00.655764+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": "doc-narrative-v1"
        }
      }
    ],
    "beats": [
      {
        "to": 4,
        "arc": {
          "name": "The Consultant's Gambit",
          "slug": "consultants-gambit",
          "status": "active",
          "bestFor": "Business cases, project proposals, strategic recommendations",
          "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "from": 1,
        "name": "Situation & Context",
        "beatId": "aa1c818c-68e7-426f-b826-0c4c13911e49",
        "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
        "beatType": {
          "name": "Situation & Context",
          "slug": "consultants-gambit-situation-context",
          "status": "active",
          "canonId": "019dd9b8-05ae-741b-992d-65ee83c639b3",
          "version": 1,
          "description": null
        },
        "evidence": "The deck introduces the topic and provides context for the presentation.",
        "position": 0,
        "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": 0.8
      },
      {
        "to": 10,
        "arc": {
          "name": "The Consultant's Gambit",
          "slug": "consultants-gambit",
          "status": "active",
          "bestFor": "Business cases, project proposals, strategic recommendations",
          "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "from": 8,
        "name": "Problem & Complication",
        "beatId": "3e4df0f1-b51c-4eb8-8984-cf487630995c",
        "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
        "beatType": {
          "name": "Problem & Complication",
          "slug": "consultants-gambit-problem-complication",
          "status": "active",
          "canonId": "019dd9b8-064a-777f-a374-e9a8c43dedd4",
          "version": 1,
          "description": null
        },
        "evidence": "The deck highlights key challenges faced by developers.",
        "position": 1,
        "isPrimaryArc": true,
        "parentBeatType": {
          "name": "Complication",
          "slug": "complication",
          "status": "active",
          "canonId": "019dd9b8-0275-7709-b2d6-4f77c3fc7579",
          "version": 1,
          "description": "The point in the narrative where the audience should feel discomfort. Required for argumentative arcs."
        },
        "alignedBlockIds": null,
        "matchConfidence": 0.8
      },
      {
        "to": 24,
        "arc": {
          "name": "The Consultant's Gambit",
          "slug": "consultants-gambit",
          "status": "active",
          "bestFor": "Business cases, project proposals, strategic recommendations",
          "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "from": 18,
        "name": "Solution & Approach",
        "beatId": "6a595c98-d8a9-4487-ab18-da553cdcbd7b",
        "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
        "beatType": {
          "name": "Solution & Approach",
          "slug": "consultants-gambit-solution-approach",
          "status": "active",
          "canonId": "019dd9b8-071c-7161-9184-580fdac7a4f9",
          "version": 1,
          "description": null
        },
        "evidence": "The deck presents solutions and demonstrates their effectiveness.",
        "position": 2,
        "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": 0.8
      },
      {
        "to": 23,
        "arc": {
          "name": "The Consultant's Gambit",
          "slug": "consultants-gambit",
          "status": "active",
          "bestFor": "Business cases, project proposals, strategic recommendations",
          "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "from": 19,
        "name": "Evidence & Proof",
        "beatId": "c834f6a1-de32-4eed-b670-978affb4f333",
        "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
        "beatType": {
          "name": "Evidence & Proof",
          "slug": "consultants-gambit-evidence-proof",
          "status": "active",
          "canonId": "019dd9b8-07b1-7688-8e1e-7637fec3802a",
          "version": 1,
          "description": null
        },
        "evidence": "The deck provides evidence and examples to support the solutions.",
        "position": 3,
        "isPrimaryArc": true,
        "parentBeatType": {
          "name": "Evidence",
          "slug": "evidence",
          "status": "active",
          "canonId": "019dd9b8-03f9-772a-b84a-4f07b415b77a",
          "version": 1,
          "description": "A dedicated proof beat exists in only ~4 arcs (Gambit, Sequoia, AIDA, Monroes). Other arcs embed evidence inline within development."
        },
        "alignedBlockIds": null,
        "matchConfidence": 0.8
      },
      {
        "to": 29,
        "arc": {
          "name": "The Consultant's Gambit",
          "slug": "consultants-gambit",
          "status": "active",
          "bestFor": "Business cases, project proposals, strategic recommendations",
          "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "from": 28,
        "name": "Impact & Next Steps",
        "beatId": "b6be9ebb-7a47-4f27-8f99-f90b9c4a91d1",
        "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
        "beatType": {
          "name": "Impact & Next Steps",
          "slug": "consultants-gambit-impact-next-steps",
          "status": "active",
          "canonId": "019dd9b8-0849-7728-9ee9-fd1609c4c655",
          "version": 1,
          "description": null
        },
        "evidence": "The deck concludes with a call to action and resources for further learning.",
        "position": 4,
        "isPrimaryArc": true,
        "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": 0.8
      }
    ],
    "loops": [
      {
        "to": 7,
        "from": 6,
        "loop": {
          "name": "11_golden_circle",
          "slug": "11-golden-circle",
          "status": "active",
          "bestFor": "Visionary leadership, brand positioning, mission statements",
          "canonId": "019dd956-6a50-7202-882d-505fcb9922ed",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Why (Belief) -> The How (Process) -> The What (Result)",
          "description": "Invert the typical pitch by starting with why you exist, rather than what you do",
          "familyLabel": null,
          "categoryName": "Vision",
          "categorySlug": "vision"
        },
        "matchId": "c4534be2-f456-4650-b6d0-f9b9e7fcb043",
        "evidence": "The deck presents product goals and engineering goals, following the Golden Circle structure.",
        "position": 0,
        "objective": "What, How, Why",
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 22:07:00.884713+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": "doc-narrative-v1"
        }
      },
      {
        "to": 17,
        "from": 9,
        "loop": {
          "name": "42_hypothesis_test",
          "slug": "42-hypothesis-test",
          "status": "active",
          "bestFor": "Strategy validation, due diligence, research presentations",
          "canonId": "019dd956-76fd-7577-8bcd-d7d39f7c13a8",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Hypothesis -> Test 1 (Supports/Refutes) -> Test 2 (Supports/Refutes) -> Conclusion (Validated/Pivoted)",
          "description": "State a hypothesis upfront, then systematically prove or disprove it with evidence",
          "familyLabel": null,
          "categoryName": "Consulting Framework",
          "categorySlug": "consulting-framework"
        },
        "matchId": "b6425813-c81e-4c3e-b981-a0c0ba2a789f",
        "evidence": "The deck presents a problem statement and proposes solutions.",
        "position": 1,
        "objective": "Problem Statement and Solution Hypothesis",
        "confidence": 0.6,
        "extraction": {
          "at": "2026-07-16 22:07:00.919608+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": "doc-narrative-v1"
        }
      }
    ],
    "tools": [
      {
        "tool": {
          "name": "Slide recipe: Cover",
          "slug": "cover-slide",
          "status": "active",
          "bestFor": null,
          "canonId": "019df269-2a08-767d-9128-e7431e6fe8a3",
          "version": 1,
          "bodyDocId": "019df269-29e5-7738-b5fa-6892e5dc8e65",
          "description": "The first ten seconds. Build it deliberately.",
          "familyLabel": "slide-recipe",
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "designer",
        "layer": "slide",
        "agents": [
          "designer"
        ],
        "matchId": "2beddb9d-5a58-4080-b599-06b5940b9786",
        "evidence": "The slide is titled 'RDC 18 Roblox Developer Conference' and has a subtitle and headline.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 23:24:27.395564+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 1,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "List presentation",
          "slug": "list-presentation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4ef7-777d-ba68-9074c2b3bcf1",
          "version": 1,
          "bodyDocId": null,
          "description": "Bulleted, numbered, or checklist enumerations.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "b979401b-8553-4f4c-8702-ed81f3159aa4",
        "evidence": "list/bullet: Automated Testing → TestEZ State Management → Rodux Dynamic UI → Roact",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 23:24:26.853671+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 18,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "List presentation",
          "slug": "list-presentation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4ef7-777d-ba68-9074c2b3bcf1",
          "version": 1,
          "bodyDocId": null,
          "description": "Bulleted, numbered, or checklist enumerations.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "0c874e6a-fefa-44ac-9863-23415f6dd13c",
        "evidence": "list/bullet: Behavior-Driven Development testing framework Runs inside Roblox via normal and core scripts Also runs inside Lemur, which we use on Travis-CI",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 23:24:26.929582+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "List presentation",
          "slug": "list-presentation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4ef7-777d-ba68-9074c2b3bcf1",
          "version": 1,
          "bodyDocId": null,
          "description": "Bulleted, numbered, or checklist enumerations.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "a128ac8a-5ba8-4567-a507-9e5183dbd6ed",
        "evidence": "list/bullet: Based on Redux, created by Dan Abramov Three principles: - Single source of truth for all state - State is read-only - State is defined by pure functions, known as reducers Can be implemented in only ~20 lin",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 23:24:27.043664+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 21,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "List presentation",
          "slug": "list-presentation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4ef7-777d-ba68-9074c2b3bcf1",
          "version": 1,
          "bodyDocId": null,
          "description": "Bulleted, numbered, or checklist enumerations.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "991eb21f-4765-4cea-933e-83e7be370379",
        "evidence": "list/bullet: Create components to represent pieces of UI Components receive state and return description of UI Roact actually updates your UI objects!",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 23:24:27.196273+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 24,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "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": "694faaf8-aafd-4eb2-b38c-c1e285f3a2d1",
        "evidence": "Q & A",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 23:24:22.312119+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 29,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      }
    ],
    "frameworks": [
      {
        "matchId": "911502b2-d92f-4aad-a8a8-18114baf684c",
        "evidence": "The slide explicitly lists the three core principles of Redux.",
        "framework": null,
        "confidence": 1,
        "extraction": {
          "at": "2026-05-02 14:18:22.527+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 21,
        "frameworkName": "Redux Principles"
      }
    ],
    "patterns": []
  },
  "storymakers": null,
  "score": null,
  "review": null,
  "activistThesis": null,
  "pitchdeck": {
    "metadata": null,
    "profile": null
  },
  "slides": [
    {
      "page": 1,
      "type": "setup",
      "function": "front_matter",
      "imagePath": "https://imgproxy.kitesheet.com/n4mn69bNEGohiP8LOU28GYcUXnnOYizkjl5J69e16qs/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9kYjE4MThjZGFiODE2ZDY4MDcwOTRmYzg4NTM2YzlhMi9wMDAxLmpwZw",
      "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": 33,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:19.076+00",
          "seconds": 2.014,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/1",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-1",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.15,
            "w": 0.26,
            "x": 0.37,
            "y": 0.38
          },
          "kind": "title",
          "text": "RDC 18",
          "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 14:18:19.076+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e55da643-2fba-4f65-8125-538ec7ce01d9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.26,
            "x": 0.37,
            "y": 0.55
          },
          "kind": "title",
          "text": "ROBLOX DEVELOPER CONFERENCE",
          "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 14:18:19.076+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "decc71fd-353f-4a37-97a2-26d7f423325b",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Slide recipe: Cover",
            "slug": "cover-slide",
            "status": "active",
            "bestFor": null,
            "canonId": "019df269-2a08-767d-9128-e7431e6fe8a3",
            "version": 1,
            "bodyDocId": "019df269-29e5-7738-b5fa-6892e5dc8e65",
            "description": "The first ten seconds. Build it deliberately.",
            "familyLabel": "slide-recipe",
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "designer",
          "layer": "slide",
          "agents": [
            "designer"
          ],
          "matchId": "2beddb9d-5a58-4080-b599-06b5940b9786",
          "evidence": "The slide is titled 'RDC 18 Roblox Developer Conference' and has a subtitle and headline.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 23:24:27.395564+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 4,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Situation & Context",
          "beatId": "aa1c818c-68e7-426f-b826-0c4c13911e49",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Situation & Context",
            "slug": "consultants-gambit-situation-context",
            "status": "active",
            "canonId": "019dd9b8-05ae-741b-992d-65ee83c639b3",
            "version": 1,
            "description": null
          },
          "evidence": "The deck introduces the topic and provides context for the presentation.",
          "position": 0,
          "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": 0.8
        }
      ],
      "loops": [],
      "thumbSrc": "https://imgproxy.kitesheet.com/vOe3BNcbIesMG8gGW4kuqYuEMFr8x3teoWhotIglKtA/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9kYjE4MThjZGFiODE2ZDY4MDcwOTRmYzg4NTM2YzlhMi9wMDAxLmpwZw",
      "imagePathAlt": "https://imgproxy.kitesheet.com/RVhYXo5yKYSjGPg7rFCHdZOuSNo3aj1qHA1RRme0dlA/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9kYjE4MThjZGFiODE2ZDY4MDcwOTRmYzg4NTM2YzlhMi9wMDAxLnBuZw",
      "thumbSrcAlt": "https://imgproxy.kitesheet.com/II9TCxrv9Qd9xyxintwEfUoJf5JaRBZfQMcP6wJ7Mbw/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9kYjE4MThjZGFiODE2ZDY4MDcwOTRmYzg4NTM2YzlhMi9wMDAxLnBuZw"
    },
    {
      "page": 2,
      "type": "setup",
      "function": "front_matter",
      "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": 13,
        "componentCount": 3,
        "textChars": 93,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:19.485+00",
          "seconds": 2.358,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/2",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-2",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.364,
            "w": 0.184,
            "x": 0.408,
            "y": 0.128
          },
          "kind": "image",
          "text": "RDC 18 Roblox Developer Conference",
          "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 14:18:19.485+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4ac1a59e-4e18-408f-aadc-aa2aa3d0c94e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.154,
            "w": 0.606,
            "x": 0.197,
            "y": 0.465
          },
          "kind": "title",
          "text": "Building Amazing GUIs with Roact and Rodux",
          "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 14:18:19.485+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "656546f6-a06d-4860-8634-5044a53687ca",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.056,
            "w": 0.282,
            "x": 0.359,
            "y": 0.713
          },
          "kind": "title",
          "text": "Lucien Greathouse",
          "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 14:18:19.485+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d1d26b17-ad6f-4c79-b22f-73f1e03e3604",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 4,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Situation & Context",
          "beatId": "aa1c818c-68e7-426f-b826-0c4c13911e49",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Situation & Context",
            "slug": "consultants-gambit-situation-context",
            "status": "active",
            "canonId": "019dd9b8-05ae-741b-992d-65ee83c639b3",
            "version": 1,
            "description": null
          },
          "evidence": "The deck introduces the topic and provides context for the presentation.",
          "position": 0,
          "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": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 3,
      "type": "setup",
      "title": "The slide uses a Roblox avatar as the primary visual element.",
      "function": "front_matter",
      "rawType": "team_bio",
      "block": null,
      "metadata": {
        "slideType": "team_bio",
        "slideTypeCanon": {
          "name": "Team bio",
          "slug": "team_bio",
          "status": "active",
          "canonId": "019de52d-0a7d-7394-ae5b-037478e71f1e",
          "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": 20,
        "componentCount": 4,
        "textChars": 56,
        "nDataPoints": 0,
        "notes": "The slide uses a Roblox avatar as the primary visual element.",
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:22.152+00",
          "seconds": 4.918,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/3",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-3",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.12,
            "w": 0.08,
            "x": 0.9,
            "y": 0.02
          },
          "kind": "image",
          "text": "RDC 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 14:18:22.152+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c18de6a1-588c-4e36-9981-707752ff7129",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.3,
            "x": 0.35,
            "y": 0.15
          },
          "kind": "image",
          "text": "Roblox avatar",
          "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 14:18:22.152+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b8357f5d-c65b-4b4e-b2b3-76238027cbad",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.3,
            "x": 0.35,
            "y": 0.75
          },
          "kind": "paragraph",
          "text": "Lucien Greathouse\nLPGhatguy",
          "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 14:18:22.152+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "aed431bd-ce30-4583-827b-5f80bb5ad920",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.25,
            "x": 0.05,
            "y": 0.05
          },
          "kind": "title",
          "text": "Who I Am",
          "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 14:18:22.152+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "546d53fe-3185-4a26-ae30-cfc5d60b2988",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 4,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Situation & Context",
          "beatId": "aa1c818c-68e7-426f-b826-0c4c13911e49",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Situation & Context",
            "slug": "consultants-gambit-situation-context",
            "status": "active",
            "canonId": "019dd9b8-05ae-741b-992d-65ee83c639b3",
            "version": 1,
            "description": null
          },
          "evidence": "The deck introduces the topic and provides context for the presentation.",
          "position": 0,
          "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": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 4,
      "type": "setup",
      "function": "front_matter",
      "rawType": "agenda",
      "block": null,
      "metadata": {
        "slideType": "agenda",
        "slideTypeCanon": {
          "name": "Agenda",
          "slug": "agenda",
          "status": "active",
          "canonId": "019de52d-061b-7470-b138-3ffa5e612cce",
          "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": 11,
        "componentCount": 3,
        "textChars": 58,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:22.483+00",
          "seconds": 5.103,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/4",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-4",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.08,
            "w": 0.06,
            "x": 0.905,
            "y": 0.035
          },
          "kind": "image",
          "text": "RDC",
          "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 14:18:22.483+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b39d8d37-9642-4850-997a-76c86ace2699",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.45,
            "w": 0.25,
            "x": 0.055,
            "y": 0.24
          },
          "kind": "list",
          "text": "Lua Mobile Chat\n3 Big Problems\nSolutions\nDemo\nQ&A",
          "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 14:18:22.483+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f429cbf5-0279-46f6-ab7f-bba8967b80d5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.13,
            "w": 0.21,
            "x": 0.055,
            "y": 0.055
          },
          "kind": "title",
          "text": "Agenda",
          "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 14:18:22.483+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9b99be29-e845-43db-a4ef-b4ebef8dea34",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 4,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Situation & Context",
          "beatId": "aa1c818c-68e7-426f-b826-0c4c13911e49",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Situation & Context",
            "slug": "consultants-gambit-situation-context",
            "status": "active",
            "canonId": "019dd9b8-05ae-741b-992d-65ee83c639b3",
            "version": 1,
            "description": null
          },
          "evidence": "The deck introduces the topic and provides context for the presentation.",
          "position": 0,
          "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": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 5,
      "type": "setup",
      "function": "front_matter",
      "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": 3,
        "componentCount": 2,
        "textChars": 18,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:19.408+00",
          "seconds": 1.847,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/5",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-5",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.11,
            "w": 0.07,
            "x": 0.9,
            "y": 0.03
          },
          "kind": "image",
          "text": "RDC",
          "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 14:18:19.408+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9ec9ef7c-79c6-4478-808c-3707d9b4d64b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.14,
            "w": 0.38,
            "x": 0.06,
            "y": 0.43
          },
          "kind": "title",
          "text": "Lua Mobile Chat",
          "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 14:18:19.408+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b7da587b-b18f-40ea-9127-c2a7562abd44",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 6,
      "type": "setup",
      "title": "RDC logo present in top right corner.",
      "function": "present_solution",
      "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_solution",
        "functionCanon": {
          "name": "Present solution",
          "slug": "present_solution",
          "status": "active",
          "canonId": "019de52d-15b8-71da-bd23-2b767850cbce",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 17,
        "componentCount": 3,
        "textChars": 152,
        "nDataPoints": 0,
        "notes": "RDC logo present in top right corner.",
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:22.233+00",
          "seconds": 4.599,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/6",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-6",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.85,
            "w": 0.22,
            "x": 0.5,
            "y": 0.08
          },
          "kind": "image",
          "text": "Mobile chat 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 14:18:22.233+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ab38aacd-d9ac-40d5-b520-cac12d2f14b7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.4,
            "x": 0.05,
            "y": 0.32
          },
          "kind": "list",
          "text": "Rebuild mobile chat using Roblox game engine\nBased on success of Xbox and the avatar editor",
          "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 14:18:22.233+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "dafcd5a0-0252-4be6-b8f8-76fec974cf6e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.4,
            "x": 0.05,
            "y": 0.08
          },
          "kind": "title",
          "text": "Mobile Lua Chat Product Goals",
          "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 14:18:22.233+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "39b7977b-6037-4da6-97ac-397ba450b3f8",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [
        {
          "to": 7,
          "from": 6,
          "loop": {
            "name": "11_golden_circle",
            "slug": "11-golden-circle",
            "status": "active",
            "bestFor": "Visionary leadership, brand positioning, mission statements",
            "canonId": "019dd956-6a50-7202-882d-505fcb9922ed",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Why (Belief) -> The How (Process) -> The What (Result)",
            "description": "Invert the typical pitch by starting with why you exist, rather than what you do",
            "familyLabel": null
          },
          "matchId": "c4534be2-f456-4650-b6d0-f9b9e7fcb043",
          "evidence": "The deck presents product goals and engineering goals, following the Golden Circle structure.",
          "position": 0,
          "objective": "What, How, Why",
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 22:07:00.884713+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 7,
      "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": "sparse",
        "densityScore": 14,
        "componentCount": 3,
        "textChars": 115,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:20.018+00",
          "seconds": 2.148,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/7",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-7",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.08,
            "w": 0.07,
            "x": 0.9,
            "y": 0.03
          },
          "kind": "image",
          "text": "RDC",
          "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 14:18:20.018+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c09500bb-6492-4635-a176-14f56760ac69",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.6,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "list",
          "text": "Automated testing for Lua\nImprove quality of Lua code company-wide\nOpen source!",
          "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 14:18:20.018+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b11a1b0f-5f9f-43c3-bce0-d6e2e145305c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.6,
            "x": 0.05,
            "y": 0.07
          },
          "kind": "title",
          "text": "Mobile Lua Chat Engineering Goals",
          "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 14:18:20.018+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ff581873-a1a8-4482-a21f-8a77096d5ac5",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [
        {
          "to": 7,
          "from": 6,
          "loop": {
            "name": "11_golden_circle",
            "slug": "11-golden-circle",
            "status": "active",
            "bestFor": "Visionary leadership, brand positioning, mission statements",
            "canonId": "019dd956-6a50-7202-882d-505fcb9922ed",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Why (Belief) -> The How (Process) -> The What (Result)",
            "description": "Invert the typical pitch by starting with why you exist, rather than what you do",
            "familyLabel": null
          },
          "matchId": "c4534be2-f456-4650-b6d0-f9b9e7fcb043",
          "evidence": "The deck presents product goals and engineering goals, following the Golden Circle structure.",
          "position": 0,
          "objective": "What, How, Why",
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 22:07:00.884713+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 8,
      "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": 3,
        "componentCount": 2,
        "textChars": 17,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:21.301+00",
          "seconds": 3.142,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/8",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-8",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.08,
            "w": 0.06,
            "x": 0.905,
            "y": 0.03
          },
          "kind": "image",
          "text": "RDC",
          "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 14:18:21.301+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "26591aa9-619c-4f47-a3f8-8d6efea410c9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.14,
            "w": 0.45,
            "x": 0.06,
            "y": 0.43
          },
          "kind": "title",
          "text": "Key Challenges",
          "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 14:18:21.301+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6dab047a-0ee3-4f6e-8dca-9e6b23d7d254",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 10,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Problem & Complication",
          "beatId": "3e4df0f1-b51c-4eb8-8984-cf487630995c",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Problem & Complication",
            "slug": "consultants-gambit-problem-complication",
            "status": "active",
            "canonId": "019dd9b8-064a-777f-a374-e9a8c43dedd4",
            "version": 1,
            "description": null
          },
          "evidence": "The deck highlights key challenges faced by developers.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Complication",
            "slug": "complication",
            "status": "active",
            "canonId": "019dd9b8-0275-7709-b2d6-4f77c3fc7579",
            "version": 1,
            "description": "The point in the narrative where the audience should feel discomfort. Required for argumentative arcs."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 9,
      "type": "tension",
      "title": "Includes a list of external testing frameworks as a benchmark for the current state of the art.",
      "function": "diagnose_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": "diagnose_problem",
        "functionCanon": {
          "name": "Diagnose problem",
          "slug": "diagnose_problem",
          "status": "active",
          "canonId": "019de52d-176d-761f-b608-cf52262d2ab2",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 34,
        "componentCount": 4,
        "textChars": 278,
        "nDataPoints": 0,
        "notes": "Includes a list of external testing frameworks as a benchmark for the current state of the art.",
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:21.128+00",
          "seconds": 2.877,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/9",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-9",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.12,
            "w": 0.08,
            "x": 0.9,
            "y": 0.02
          },
          "kind": "image",
          "text": "RDC",
          "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 14:18:21.128+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "91dad1b1-5238-4c01-83cd-daa8d418e0f0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.5,
            "x": 0.05,
            "y": 0.55
          },
          "kind": "list",
          "text": "Current state of the art outside Roblox: Busted (Lua), Mocha/Chai (JavaScript), Ginkgo (Go), Cargo Test (Rust)",
          "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 14:18:21.128+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5c050a4b-eff3-415a-b2d6-7ba56f4c9cdb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.8,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "list",
          "text": "Automated testing is easy, you just have to do it! No automated testing for Lua code at Roblox. Roblox has TestService, but it's not very ergonomic.",
          "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 14:18:21.128+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7da92b58-f984-4654-98d3-1c594dba2d3a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.45,
            "x": 0.05,
            "y": 0.05
          },
          "kind": "title",
          "text": "Automated Testing",
          "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 14:18:21.128+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8d9e7bad-e17f-47bc-ae8a-c1bdb2abbc56",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 10,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Problem & Complication",
          "beatId": "3e4df0f1-b51c-4eb8-8984-cf487630995c",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Problem & Complication",
            "slug": "consultants-gambit-problem-complication",
            "status": "active",
            "canonId": "019dd9b8-064a-777f-a374-e9a8c43dedd4",
            "version": 1,
            "description": null
          },
          "evidence": "The deck highlights key challenges faced by developers.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Complication",
            "slug": "complication",
            "status": "active",
            "canonId": "019dd9b8-0275-7709-b2d6-4f77c3fc7579",
            "version": 1,
            "description": "The point in the narrative where the audience should feel discomfort. Required for argumentative arcs."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [
        {
          "to": 17,
          "from": 9,
          "loop": {
            "name": "42_hypothesis_test",
            "slug": "42-hypothesis-test",
            "status": "active",
            "bestFor": "Strategy validation, due diligence, research presentations",
            "canonId": "019dd956-76fd-7577-8bcd-d7d39f7c13a8",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Hypothesis -> Test 1 (Supports/Refutes) -> Test 2 (Supports/Refutes) -> Conclusion (Validated/Pivoted)",
            "description": "State a hypothesis upfront, then systematically prove or disprove it with evidence",
            "familyLabel": null
          },
          "matchId": "b6425813-c81e-4c3e-b981-a0c0ba2a789f",
          "evidence": "The deck presents a problem statement and proposes solutions.",
          "position": 1,
          "objective": "Problem Statement and Solution Hypothesis",
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 22:07:00.919608+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 10,
      "type": "setup",
      "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": "sparse",
        "densityScore": 18,
        "componentCount": 2,
        "textChars": 249,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:20.739+00",
          "seconds": 2.315,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/10",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-10",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.6,
            "w": 0.75,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "list",
          "text": "Lots of code wants to read/write data; Networking, User interaction. Everything needs to agree on what that data is! We use the term “state ownership” to describe this idea. Popular solutions outside Roblox: Redux, MobX, Angular, WPF",
          "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 14:18:20.739+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e1567fc6-fc41-4f4e-af87-56532387c57a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.45,
            "x": 0.05,
            "y": 0.05
          },
          "kind": "title",
          "text": "State Management",
          "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 14:18:20.739+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d6ef43f5-4418-4370-a7f2-a86bf8c642ce",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 10,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Problem & Complication",
          "beatId": "3e4df0f1-b51c-4eb8-8984-cf487630995c",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Problem & Complication",
            "slug": "consultants-gambit-problem-complication",
            "status": "active",
            "canonId": "019dd9b8-064a-777f-a374-e9a8c43dedd4",
            "version": 1,
            "description": null
          },
          "evidence": "The deck highlights key challenges faced by developers.",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Complication",
            "slug": "complication",
            "status": "active",
            "canonId": "019dd9b8-0275-7709-b2d6-4f77c3fc7579",
            "version": 1,
            "description": "The point in the narrative where the audience should feel discomfort. Required for argumentative arcs."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [
        {
          "to": 17,
          "from": 9,
          "loop": {
            "name": "42_hypothesis_test",
            "slug": "42-hypothesis-test",
            "status": "active",
            "bestFor": "Strategy validation, due diligence, research presentations",
            "canonId": "019dd956-76fd-7577-8bcd-d7d39f7c13a8",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Hypothesis -> Test 1 (Supports/Refutes) -> Test 2 (Supports/Refutes) -> Conclusion (Validated/Pivoted)",
            "description": "State a hypothesis upfront, then systematically prove or disprove it with evidence",
            "familyLabel": null
          },
          "matchId": "b6425813-c81e-4c3e-b981-a0c0ba2a789f",
          "evidence": "The deck presents a problem statement and proposes solutions.",
          "position": 1,
          "objective": "Problem Statement and Solution Hypothesis",
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 22:07:00.919608+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 11,
      "type": "tension",
      "title": "The slide uses a simple visual representation of a list transformation to illustrate the synchronization challenge.",
      "function": "diagnose_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": "diagnose_problem",
        "functionCanon": {
          "name": "Diagnose problem",
          "slug": "diagnose_problem",
          "status": "active",
          "canonId": "019de52d-176d-761f-b608-cf52262d2ab2",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 19,
        "componentCount": 3,
        "textChars": 183,
        "nDataPoints": 0,
        "notes": "The slide uses a simple visual representation of a list transformation to illustrate the synchronization challenge.",
        "elementsJson": null,
        "confidence": 0.95,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:21.212+00",
          "seconds": 2.773,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/11",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-11",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.35,
            "w": 0.8,
            "x": 0.05,
            "y": 0.55
          },
          "kind": "diagram",
          "text": "Visual representation of list items changing order or content",
          "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 14:18:21.212+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "08435e68-7826-447f-a2fa-173d3bdf9e3a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.5,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "list",
          "text": "It’s hard to keep data in sync with UI!\nSimple values, like currency, are easy\nLists and grids of items are hard",
          "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 14:18:21.212+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "24415b6d-427b-4775-aca0-b31da1986c70",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.25,
            "x": 0.05,
            "y": 0.05
          },
          "kind": "title",
          "text": "Dynamic UI",
          "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 14:18:21.212+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "77b06a27-2102-414e-ada6-817ec9e622d0",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [
        {
          "to": 17,
          "from": 9,
          "loop": {
            "name": "42_hypothesis_test",
            "slug": "42-hypothesis-test",
            "status": "active",
            "bestFor": "Strategy validation, due diligence, research presentations",
            "canonId": "019dd956-76fd-7577-8bcd-d7d39f7c13a8",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Hypothesis -> Test 1 (Supports/Refutes) -> Test 2 (Supports/Refutes) -> Conclusion (Validated/Pivoted)",
            "description": "State a hypothesis upfront, then systematically prove or disprove it with evidence",
            "familyLabel": null
          },
          "matchId": "b6425813-c81e-4c3e-b981-a0c0ba2a789f",
          "evidence": "The deck presents a problem statement and proposes solutions.",
          "position": 1,
          "objective": "Problem Statement and Solution Hypothesis",
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 22:07:00.919608+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 12,
      "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": 3,
        "componentCount": 2,
        "textChars": 21,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:20.353+00",
          "seconds": 1.686,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/12",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-12",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.06,
            "w": 0.06,
            "x": 0.905,
            "y": 0.04
          },
          "kind": "image",
          "text": "RDC",
          "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 14:18:20.353+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2164feec-a02e-42ba-a14f-4bd64542a6c3",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.14,
            "w": 0.68,
            "x": 0.06,
            "y": 0.43
          },
          "kind": "title",
          "text": "Major UI Paradigms",
          "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 14:18:20.353+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "45be4eac-4119-4ac7-8b91-0c15ab3ee36e",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [
        {
          "to": 17,
          "from": 9,
          "loop": {
            "name": "42_hypothesis_test",
            "slug": "42-hypothesis-test",
            "status": "active",
            "bestFor": "Strategy validation, due diligence, research presentations",
            "canonId": "019dd956-76fd-7577-8bcd-d7d39f7c13a8",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Hypothesis -> Test 1 (Supports/Refutes) -> Test 2 (Supports/Refutes) -> Conclusion (Validated/Pivoted)",
            "description": "State a hypothesis upfront, then systematically prove or disprove it with evidence",
            "familyLabel": null
          },
          "matchId": "b6425813-c81e-4c3e-b981-a0c0ba2a789f",
          "evidence": "The deck presents a problem statement and proposes solutions.",
          "position": 1,
          "objective": "Problem Statement and Solution Hypothesis",
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 22:07:00.919608+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 13,
      "type": "appendix",
      "title": "The slide uses a Star Wars reference for the example.",
      "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": "balanced",
        "densityScore": 27,
        "componentCount": 4,
        "textChars": 162,
        "nDataPoints": 0,
        "notes": "The slide uses a Star Wars reference for the example.",
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:23.838+00",
          "seconds": 5.116,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/13",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-13",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.15,
            "w": 0.9,
            "x": 0.05,
            "y": 0.6
          },
          "kind": "diagram",
          "text": "Hello, there! -> General Kenobi!",
          "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 14:18:23.838+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "bd189487-5c77-47c8-a532-cbea14cd63c1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.6,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "list",
          "text": "UI represented by persistent objects\nChanges are performed by setting properties",
          "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 14:18:23.838+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "45103c0d-1406-44e1-8c3f-e173f33841bd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.54,
            "x": 0.23,
            "y": 0.75
          },
          "kind": "paragraph",
          "text": "textLabel.Text = \"General Kenobi!\"",
          "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 14:18:23.838+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3b85ebc3-36b1-4a42-ae38-233aec718481",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.35,
            "x": 0.05,
            "y": 0.05
          },
          "kind": "title",
          "text": "Retained Mode UI",
          "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 14:18:23.838+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4437a054-2eac-4e8b-92f0-2454b569ebc9",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [
        {
          "to": 17,
          "from": 9,
          "loop": {
            "name": "42_hypothesis_test",
            "slug": "42-hypothesis-test",
            "status": "active",
            "bestFor": "Strategy validation, due diligence, research presentations",
            "canonId": "019dd956-76fd-7577-8bcd-d7d39f7c13a8",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Hypothesis -> Test 1 (Supports/Refutes) -> Test 2 (Supports/Refutes) -> Conclusion (Validated/Pivoted)",
            "description": "State a hypothesis upfront, then systematically prove or disprove it with evidence",
            "familyLabel": null
          },
          "matchId": "b6425813-c81e-4c3e-b981-a0c0ba2a789f",
          "evidence": "The deck presents a problem statement and proposes solutions.",
          "position": 1,
          "objective": "Problem Statement and Solution Hypothesis",
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 22:07:00.919608+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 14,
      "type": "appendix",
      "title": "The slide uses a simple process flow diagram to show a transition from a three-item list to a two-item list, with a question mark placeholder at the bottom.",
      "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": 11,
        "componentCount": 3,
        "textChars": 64,
        "nDataPoints": 0,
        "notes": "The slide uses a simple process flow diagram to show a transition from a three-item list to a two-item list, with a question mark placeholder at the bottom.",
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:20.971+00",
          "seconds": 2.142,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/14",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-14",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.35,
            "w": 0.88,
            "x": 0.06,
            "y": 0.32
          },
          "kind": "diagram",
          "text": "Flow from list [Foo, Bar, Baz] to [Oof, Foo]",
          "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 14:18:20.971+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "51f20dbc-4c5d-46ce-a04b-152b64a53c87",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.15,
            "x": 0.42,
            "y": 0.75
          },
          "kind": "paragraph",
          "text": "????",
          "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 14:18:20.971+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "03f5abbb-0e24-4f5a-b15b-462664f52f23",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.35,
            "x": 0.05,
            "y": 0.05
          },
          "kind": "title",
          "text": "Retained Mode UI",
          "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 14:18:20.971+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8c87f1fd-2840-4b8c-a98f-5c6df7be9a66",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [
        {
          "to": 17,
          "from": 9,
          "loop": {
            "name": "42_hypothesis_test",
            "slug": "42-hypothesis-test",
            "status": "active",
            "bestFor": "Strategy validation, due diligence, research presentations",
            "canonId": "019dd956-76fd-7577-8bcd-d7d39f7c13a8",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Hypothesis -> Test 1 (Supports/Refutes) -> Test 2 (Supports/Refutes) -> Conclusion (Validated/Pivoted)",
            "description": "State a hypothesis upfront, then systematically prove or disprove it with evidence",
            "familyLabel": null
          },
          "matchId": "b6425813-c81e-4c3e-b981-a0c0ba2a789f",
          "evidence": "The deck presents a problem statement and proposes solutions.",
          "position": 1,
          "objective": "Problem Statement and Solution Hypothesis",
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 22:07:00.919608+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 15,
      "type": "appendix",
      "title": "Includes a Star Wars reference in the code example.",
      "function": "establish_context",
      "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": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 48,
        "componentCount": 6,
        "textChars": 203,
        "nDataPoints": 0,
        "notes": "Includes a Star Wars reference in the code example.",
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:22.032+00",
          "seconds": 3.15,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/15",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-15",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.25,
            "w": 0.6,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "list",
          "text": "UI represented by code called every frame\nImmediate mode UI is the gold standard\nIt can have performance problems!",
          "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 14:18:22.032+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8425e4e6-d77d-42d6-8aed-7e6d8c33a841",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.25,
            "x": 0.08,
            "y": 0.75
          },
          "kind": "paragraph",
          "text": "text(\"Hello, there!\")",
          "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 14:18:22.032+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "085a9007-7dec-4d7c-9514-8d0cf7ebf93f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.25,
            "x": 0.62,
            "y": 0.75
          },
          "kind": "paragraph",
          "text": "text(\"General Kenobi!\")",
          "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 14:18:22.032+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "10130843-8786-431f-9d05-2ec2633271de",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.3,
            "x": 0.05,
            "y": 0.6
          },
          "kind": "paragraph",
          "text": "Hello, there!",
          "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 14:18:22.032+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "29498e66-5069-4a73-8dd6-6ff14ee7ece3",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.3,
            "x": 0.6,
            "y": 0.6
          },
          "kind": "paragraph",
          "text": "General Kenobi!",
          "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 14:18:22.032+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e614133f-5686-40d1-8a70-dcd9d3cc94b4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.4,
            "x": 0.05,
            "y": 0.05
          },
          "kind": "title",
          "text": "Immediate Mode UI",
          "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 14:18:22.032+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "08ddf585-3696-40b7-8691-1268fcc2c2b4",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [
        {
          "to": 17,
          "from": 9,
          "loop": {
            "name": "42_hypothesis_test",
            "slug": "42-hypothesis-test",
            "status": "active",
            "bestFor": "Strategy validation, due diligence, research presentations",
            "canonId": "019dd956-76fd-7577-8bcd-d7d39f7c13a8",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Hypothesis -> Test 1 (Supports/Refutes) -> Test 2 (Supports/Refutes) -> Conclusion (Validated/Pivoted)",
            "description": "State a hypothesis upfront, then systematically prove or disprove it with evidence",
            "familyLabel": null
          },
          "matchId": "b6425813-c81e-4c3e-b981-a0c0ba2a789f",
          "evidence": "The deck presents a problem statement and proposes solutions.",
          "position": 1,
          "objective": "Problem Statement and Solution Hypothesis",
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 22:07:00.919608+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 16,
      "type": "appendix",
      "title": "The slide uses code-like syntax to represent UI state changes.",
      "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": 22,
        "componentCount": 4,
        "textChars": 88,
        "nDataPoints": 0,
        "notes": "The slide uses code-like syntax to represent UI state changes.",
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:24.001+00",
          "seconds": 4.854,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/16",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-16",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.4,
            "w": 0.85,
            "x": 0.07,
            "y": 0.3
          },
          "kind": "diagram",
          "text": "Transformation of list state",
          "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 14:18:24.001+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "49a4a3e4-ce92-4f66-9630-f59ee56b48ac",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.25,
            "x": 0.6,
            "y": 0.8
          },
          "kind": "paragraph",
          "text": "list(\"Oof\", \"Foo\")",
          "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 14:18:24.001+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9002c856-7fb4-4395-8a99-5e8127250dc1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.35,
            "x": 0.07,
            "y": 0.8
          },
          "kind": "paragraph",
          "text": "list(\"Foo\", \"Bar\", \"Baz\")",
          "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 14:18:24.001+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d4ebc53b-4202-4747-9353-223e94937e19",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.45,
            "x": 0.05,
            "y": 0.05
          },
          "kind": "title",
          "text": "Immediate Mode UI",
          "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 14:18:24.001+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "abab36c7-521f-4f82-9c72-4237ff22eaf8",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [
        {
          "to": 17,
          "from": 9,
          "loop": {
            "name": "42_hypothesis_test",
            "slug": "42-hypothesis-test",
            "status": "active",
            "bestFor": "Strategy validation, due diligence, research presentations",
            "canonId": "019dd956-76fd-7577-8bcd-d7d39f7c13a8",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Hypothesis -> Test 1 (Supports/Refutes) -> Test 2 (Supports/Refutes) -> Conclusion (Validated/Pivoted)",
            "description": "State a hypothesis upfront, then systematically prove or disprove it with evidence",
            "familyLabel": null
          },
          "matchId": "b6425813-c81e-4c3e-b981-a0c0ba2a789f",
          "evidence": "The deck presents a problem statement and proposes solutions.",
          "position": 1,
          "objective": "Problem Statement and Solution Hypothesis",
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 22:07:00.919608+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 17,
      "type": "appendix",
      "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": 14,
        "componentCount": 2,
        "textChars": 195,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:21.538+00",
          "seconds": 2.321,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/17",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-17",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.5,
            "w": 0.7,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "list",
          "text": "Scaleform: Retained-mode Flash UI framework by Autodesk; Used in Grand Theft Auto V. React: Declarative JavaScript UI framework by Facebook; Used in Battlefield 1.",
          "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 14:18:21.538+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b865a839-b191-48f3-aa3a-3bf5dbea4e99",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.6,
            "x": 0.05,
            "y": 0.05
          },
          "kind": "title",
          "text": "Techniques for UI Outside Roblox",
          "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 14:18:21.538+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f1bc8b28-8285-49f8-8f2d-e30a2fd0562f",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [
        {
          "to": 17,
          "from": 9,
          "loop": {
            "name": "42_hypothesis_test",
            "slug": "42-hypothesis-test",
            "status": "active",
            "bestFor": "Strategy validation, due diligence, research presentations",
            "canonId": "019dd956-76fd-7577-8bcd-d7d39f7c13a8",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Hypothesis -> Test 1 (Supports/Refutes) -> Test 2 (Supports/Refutes) -> Conclusion (Validated/Pivoted)",
            "description": "State a hypothesis upfront, then systematically prove or disprove it with evidence",
            "familyLabel": null
          },
          "matchId": "b6425813-c81e-4c3e-b981-a0c0ba2a789f",
          "evidence": "The deck presents a problem statement and proposes solutions.",
          "position": 1,
          "objective": "Problem Statement and Solution Hypothesis",
          "confidence": 0.6,
          "extraction": {
            "at": "2026-07-16 22:07:00.919608+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": "doc-narrative-v1"
          }
        }
      ],
      "locked": true
    },
    {
      "page": 18,
      "type": "setup",
      "function": "present_solution",
      "rawType": "propose_solution",
      "block": null,
      "metadata": {
        "slideType": "propose_solution",
        "slideTypeCanon": {
          "name": "Propose solution (contrarian)",
          "slug": "propose_solution",
          "status": "active",
          "canonId": "019de52d-1274-703c-81c6-5550f451697b",
          "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": "sparse",
        "densityScore": 12,
        "componentCount": 3,
        "textChars": 82,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:26.344+00",
          "seconds": 7.084,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/18",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-18",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.12,
            "w": 0.07,
            "x": 0.9,
            "y": 0.03
          },
          "kind": "image",
          "text": "RDC",
          "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 14:18:26.344+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "45b20295-04d7-42e4-9404-70c3c814572e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.4,
            "x": 0.05,
            "y": 0.28
          },
          "kind": "list",
          "text": "Automated Testing → TestEZ\nState Management → Rodux\nDynamic UI → Roact",
          "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 14:18:26.344+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8556d390-7406-4b64-b6ac-f5d2f5dc676c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.25,
            "x": 0.05,
            "y": 0.07
          },
          "kind": "title",
          "text": "Solutions",
          "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 14:18:26.344+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5f2f0b42-d765-47cd-b31b-f51a7cdcdfdb",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "List presentation",
            "slug": "list-presentation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4ef7-777d-ba68-9074c2b3bcf1",
            "version": 1,
            "bodyDocId": null,
            "description": "Bulleted, numbered, or checklist enumerations.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "b979401b-8553-4f4c-8702-ed81f3159aa4",
          "evidence": "list/bullet: Automated Testing → TestEZ State Management → Rodux Dynamic UI → Roact",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 23:24:26.853671+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 18,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 24,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 18,
          "name": "Solution & Approach",
          "beatId": "6a595c98-d8a9-4487-ab18-da553cdcbd7b",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Solution & Approach",
            "slug": "consultants-gambit-solution-approach",
            "status": "active",
            "canonId": "019dd9b8-071c-7161-9184-580fdac7a4f9",
            "version": 1,
            "description": null
          },
          "evidence": "The deck presents solutions and demonstrates their effectiveness.",
          "position": 2,
          "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": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 19,
      "type": "appendix",
      "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": 18,
        "componentCount": 3,
        "textChars": 165,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:21.531+00",
          "seconds": 2.197,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/19",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-19",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.12,
            "w": 0.07,
            "x": 0.9,
            "y": 0.03
          },
          "kind": "image",
          "text": "RDC",
          "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 14:18:21.531+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ad061d47-a237-4e9a-949d-78e5bf4f794d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.75,
            "x": 0.06,
            "y": 0.28
          },
          "kind": "list",
          "text": "Behavior-Driven Development testing framework\nRuns inside Roblox via normal and core scripts\nAlso runs inside Lemur, which we use on Travis-CI",
          "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 14:18:21.531+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b2b79291-605f-41da-ba0f-39d18401f70c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.45,
            "x": 0.06,
            "y": 0.06
          },
          "kind": "title",
          "text": "Unit Testing: TestEZ",
          "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 14:18:21.531+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "45bff756-31a6-4e90-89a1-5f2f5d3ec228",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "List presentation",
            "slug": "list-presentation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4ef7-777d-ba68-9074c2b3bcf1",
            "version": 1,
            "bodyDocId": null,
            "description": "Bulleted, numbered, or checklist enumerations.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "0c874e6a-fefa-44ac-9863-23415f6dd13c",
          "evidence": "list/bullet: Behavior-Driven Development testing framework Runs inside Roblox via normal and core scripts Also runs inside Lemur, which we use on Travis-CI",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 23:24:26.929582+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 24,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 18,
          "name": "Solution & Approach",
          "beatId": "6a595c98-d8a9-4487-ab18-da553cdcbd7b",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Solution & Approach",
            "slug": "consultants-gambit-solution-approach",
            "status": "active",
            "canonId": "019dd9b8-071c-7161-9184-580fdac7a4f9",
            "version": 1,
            "description": null
          },
          "evidence": "The deck presents solutions and demonstrates their effectiveness.",
          "position": 2,
          "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": 0.8
        },
        {
          "to": 23,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 19,
          "name": "Evidence & Proof",
          "beatId": "c834f6a1-de32-4eed-b670-978affb4f333",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Evidence & Proof",
            "slug": "consultants-gambit-evidence-proof",
            "status": "active",
            "canonId": "019dd9b8-07b1-7688-8e1e-7637fec3802a",
            "version": 1,
            "description": null
          },
          "evidence": "The deck provides evidence and examples to support the solutions.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Evidence",
            "slug": "evidence",
            "status": "active",
            "canonId": "019dd9b8-03f9-772a-b84a-4f07b415b77a",
            "version": 1,
            "description": "A dedicated proof beat exists in only ~4 arcs (Gambit, Sequoia, AIDA, Monroes). Other arcs embed evidence inline within development."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 20,
      "type": "appendix",
      "title": "The slide demonstrates BDD-style testing in Lua using a framework like busted.",
      "function": "other",
      "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": "other",
        "functionCanon": {
          "name": "Other (fallback)",
          "slug": "other",
          "status": "active",
          "canonId": "019de52d-15e1-75bc-99dc-07732380e2ce",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 21,
        "componentCount": 3,
        "textChars": 222,
        "nDataPoints": 0,
        "notes": "The slide demonstrates BDD-style testing in Lua using a framework like busted.",
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:21.652+00",
          "seconds": 2.065,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/20",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-20",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.12,
            "w": 0.07,
            "x": 0.9,
            "y": 0.03
          },
          "kind": "image",
          "text": "RDC",
          "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 14:18:21.652+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fa991891-1193-4738-8357-35c486c8d48d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.3,
            "w": 0.5,
            "x": 0.45,
            "y": 0.62
          },
          "kind": "paragraph",
          "text": "$ lua spec.lua\nTest results:\n[+] DateTime\n  [+] new()\n    [+] should construct a DateTime object\n  [+] format()\n    [+] should format dates correctly\n2 passed, 0 failed, 0 skipped",
          "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 14:18:21.652+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "21032063-d110-4adb-a8bc-916ef82d6d3b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.6,
            "x": 0.05,
            "y": 0.08
          },
          "kind": "paragraph",
          "text": "describe(\"DateTime\", function() ... end)",
          "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 14:18:21.652+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9577a168-e0bc-455c-99fe-e9ce0e10b3a4",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 24,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 18,
          "name": "Solution & Approach",
          "beatId": "6a595c98-d8a9-4487-ab18-da553cdcbd7b",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Solution & Approach",
            "slug": "consultants-gambit-solution-approach",
            "status": "active",
            "canonId": "019dd9b8-071c-7161-9184-580fdac7a4f9",
            "version": 1,
            "description": null
          },
          "evidence": "The deck presents solutions and demonstrates their effectiveness.",
          "position": 2,
          "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": 0.8
        },
        {
          "to": 23,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 19,
          "name": "Evidence & Proof",
          "beatId": "c834f6a1-de32-4eed-b670-978affb4f333",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Evidence & Proof",
            "slug": "consultants-gambit-evidence-proof",
            "status": "active",
            "canonId": "019dd9b8-07b1-7688-8e1e-7637fec3802a",
            "version": 1,
            "description": null
          },
          "evidence": "The deck provides evidence and examples to support the solutions.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Evidence",
            "slug": "evidence",
            "status": "active",
            "canonId": "019dd9b8-03f9-772a-b84a-4f07b415b77a",
            "version": 1,
            "description": "A dedicated proof beat exists in only ~4 arcs (Gambit, Sequoia, AIDA, Monroes). Other arcs embed evidence inline within development."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 21,
      "type": "setup",
      "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": "balanced",
        "densityScore": 27,
        "componentCount": 3,
        "textChars": 243,
        "nDataPoints": 1,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:22.527+00",
          "seconds": 2.871,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/21",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-21",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.08,
            "w": 0.07,
            "x": 0.9,
            "y": 0.03
          },
          "kind": "image",
          "text": "RDC",
          "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 14:18:22.527+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "192297cc-b8d9-4bfc-be40-d2fc258dcff8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.7,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "list",
          "text": "Based on Redux, created by Dan Abramov\nThree principles:\n- Single source of truth for all state\n- State is read-only\n- State is defined by pure functions, known as reducers\nCan be implemented in only ~20 lines of Lua!",
          "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 14:18:22.527+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cb3550a9-9242-4494-ab4b-bd6b8ac8f81b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.45,
            "x": 0.05,
            "y": 0.07
          },
          "kind": "title",
          "text": "State Management: Rodux",
          "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 14:18:22.527+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "33438a2e-aab1-4a50-b213-73c1bde52fd6",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "List presentation",
            "slug": "list-presentation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4ef7-777d-ba68-9074c2b3bcf1",
            "version": 1,
            "bodyDocId": null,
            "description": "Bulleted, numbered, or checklist enumerations.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "a128ac8a-5ba8-4567-a507-9e5183dbd6ed",
          "evidence": "list/bullet: Based on Redux, created by Dan Abramov Three principles: - Single source of truth for all state - State is read-only - State is defined by pure functions, known as reducers Can be implemented in only ~20 lin",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 23:24:27.043664+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 21,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "911502b2-d92f-4aad-a8a8-18114baf684c",
          "evidence": "The slide explicitly lists the three core principles of Redux.",
          "framework": null,
          "confidence": 1,
          "extraction": {
            "at": "2026-05-02 14:18:22.527+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 21,
          "frameworkName": "Redux Principles"
        }
      ],
      "arcBeats": [
        {
          "to": 24,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 18,
          "name": "Solution & Approach",
          "beatId": "6a595c98-d8a9-4487-ab18-da553cdcbd7b",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Solution & Approach",
            "slug": "consultants-gambit-solution-approach",
            "status": "active",
            "canonId": "019dd9b8-071c-7161-9184-580fdac7a4f9",
            "version": 1,
            "description": null
          },
          "evidence": "The deck presents solutions and demonstrates their effectiveness.",
          "position": 2,
          "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": 0.8
        },
        {
          "to": 23,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 19,
          "name": "Evidence & Proof",
          "beatId": "c834f6a1-de32-4eed-b670-978affb4f333",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Evidence & Proof",
            "slug": "consultants-gambit-evidence-proof",
            "status": "active",
            "canonId": "019dd9b8-07b1-7688-8e1e-7637fec3802a",
            "version": 1,
            "description": null
          },
          "evidence": "The deck provides evidence and examples to support the solutions.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Evidence",
            "slug": "evidence",
            "status": "active",
            "canonId": "019dd9b8-03f9-772a-b84a-4f07b415b77a",
            "version": 1,
            "description": "A dedicated proof beat exists in only ~4 arcs (Gambit, Sequoia, AIDA, Monroes). Other arcs embed evidence inline within development."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 22,
      "type": "appendix",
      "title": "The code snippet demonstrates the core Redux store logic (getState, subscribe, dispatch) in a very concise format.",
      "function": "present_solution",
      "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_solution",
        "functionCanon": {
          "name": "Present solution",
          "slug": "present_solution",
          "status": "active",
          "canonId": "019de52d-15b8-71da-bd23-2b767850cbce",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 28,
        "componentCount": 2,
        "textChars": 445,
        "nDataPoints": 0,
        "notes": "The code snippet demonstrates the core Redux store logic (getState, subscribe, dispatch) in a very concise format.",
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:22.144+00",
          "seconds": 2.44,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/22",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-22",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.85,
            "w": 0.45,
            "x": 0.38,
            "y": 0.08
          },
          "kind": "paragraph",
          "text": "local function createStore(reducer, initialState)\n  local state = reducer({}, initialState)\n  local listeners = {}\n\n  local store = {}\n\n  function store:getState()\n    return state\n  end\n\n  function store:subscribe(callback)\n    listeners[callback] = true\n  end\n\n  function store:dispatch(action)\n    state = reducer(state, action)\n\n    for listener in pairs(listeners) do\n      listener(state)\n    end\n  end\n\n  return store\nend",
          "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 14:18:22.144+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "adbf39a3-0ab7-41d2-abdc-d755f76cdc19",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.25,
            "x": 0.07,
            "y": 0.45
          },
          "kind": "title",
          "text": "Redux in 18 lines",
          "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 14:18:22.144+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b918d4c5-39c7-45b9-83d9-84b64439f122",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 24,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 18,
          "name": "Solution & Approach",
          "beatId": "6a595c98-d8a9-4487-ab18-da553cdcbd7b",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Solution & Approach",
            "slug": "consultants-gambit-solution-approach",
            "status": "active",
            "canonId": "019dd9b8-071c-7161-9184-580fdac7a4f9",
            "version": 1,
            "description": null
          },
          "evidence": "The deck presents solutions and demonstrates their effectiveness.",
          "position": 2,
          "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": 0.8
        },
        {
          "to": 23,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 19,
          "name": "Evidence & Proof",
          "beatId": "c834f6a1-de32-4eed-b670-978affb4f333",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Evidence & Proof",
            "slug": "consultants-gambit-evidence-proof",
            "status": "active",
            "canonId": "019dd9b8-07b1-7688-8e1e-7637fec3802a",
            "version": 1,
            "description": null
          },
          "evidence": "The deck provides evidence and examples to support the solutions.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Evidence",
            "slug": "evidence",
            "status": "active",
            "canonId": "019dd9b8-03f9-772a-b84a-4f07b415b77a",
            "version": 1,
            "description": "A dedicated proof beat exists in only ~4 arcs (Gambit, Sequoia, AIDA, Monroes). Other arcs embed evidence inline within development."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 23,
      "type": "appendix",
      "title": "The slide shows four steps: creating a reducer, creating a store, subscribing to changes, and dispatching actions.",
      "function": "present_solution",
      "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_solution",
        "functionCanon": {
          "name": "Present solution",
          "slug": "present_solution",
          "status": "active",
          "canonId": "019de52d-15b8-71da-bd23-2b767850cbce",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 69,
        "componentCount": 8,
        "textChars": 398,
        "nDataPoints": 0,
        "notes": "The slide shows four steps: creating a reducer, creating a store, subscribing to changes, and dispatching actions.",
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:28.746+00",
          "seconds": 8.89,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/23",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-23",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.06,
            "w": 0.48,
            "x": 0.325,
            "y": 0.49
          },
          "kind": "other",
          "text": "local store = Store.new(reducer)",
          "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 14:18:28.746+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "10f5a418-0985-4822-8116-35bcc64c4315",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.48,
            "x": 0.325,
            "y": 0.62
          },
          "kind": "other",
          "text": "store:subscribe(function(count)\n  textButton.Text = count\nend)",
          "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 14:18:28.746+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "26636128-6f9b-434d-9da5-90f2b5a0100e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.37,
            "w": 0.48,
            "x": 0.325,
            "y": 0.075
          },
          "kind": "other",
          "text": "local function reducer(state, action)\n  state = state or 0\n\n  if action.type == \"increment\" then\n    return state + 1\n  end\n\n  return state\nend",
          "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 14:18:28.746+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "67de0e42-fd77-432a-bfe5-7b91ecadbcd8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.48,
            "x": 0.325,
            "y": 0.81
          },
          "kind": "other",
          "text": "textButton.Activated:Connect(function()\n  store:dispatch({ type = \"increment\" })\nend)",
          "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 14:18:28.746+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6a66a8f2-b15b-4892-88ad-b91e5bacc131",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.2,
            "x": 0.12,
            "y": 0.08
          },
          "kind": "paragraph",
          "text": "Create a reducer:",
          "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 14:18:28.746+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8f03ebe6-b7f3-4584-a619-78fab947ca2d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.3,
            "x": 0.15,
            "y": 0.62
          },
          "kind": "paragraph",
          "text": "Subscribe to state changes:",
          "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 14:18:28.746+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "bc3856f7-1c87-4ceb-88e4-dd06ad63355d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.18,
            "x": 0.14,
            "y": 0.5
          },
          "kind": "paragraph",
          "text": "Create a store:",
          "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 14:18:28.746+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d1330b5b-66c8-4b4a-b7ad-dd6b92040a4f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.2,
            "x": 0.12,
            "y": 0.82
          },
          "kind": "paragraph",
          "text": "Dispatch actions:",
          "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 14:18:28.746+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e507c7f7-c32f-41a6-adbe-aa4b3e0693b6",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 24,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 18,
          "name": "Solution & Approach",
          "beatId": "6a595c98-d8a9-4487-ab18-da553cdcbd7b",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Solution & Approach",
            "slug": "consultants-gambit-solution-approach",
            "status": "active",
            "canonId": "019dd9b8-071c-7161-9184-580fdac7a4f9",
            "version": 1,
            "description": null
          },
          "evidence": "The deck presents solutions and demonstrates their effectiveness.",
          "position": 2,
          "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": 0.8
        },
        {
          "to": 23,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 19,
          "name": "Evidence & Proof",
          "beatId": "c834f6a1-de32-4eed-b670-978affb4f333",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Evidence & Proof",
            "slug": "consultants-gambit-evidence-proof",
            "status": "active",
            "canonId": "019dd9b8-07b1-7688-8e1e-7637fec3802a",
            "version": 1,
            "description": null
          },
          "evidence": "The deck provides evidence and examples to support the solutions.",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Evidence",
            "slug": "evidence",
            "status": "active",
            "canonId": "019dd9b8-03f9-772a-b84a-4f07b415b77a",
            "version": 1,
            "description": "A dedicated proof beat exists in only ~4 arcs (Gambit, Sequoia, AIDA, Monroes). Other arcs embed evidence inline within development."
          },
          "alignedBlockIds": null,
          "matchConfidence": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 24,
      "type": "setup",
      "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": 3,
        "textChars": 247,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:26.029+00",
          "seconds": 6.073,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/24",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-24",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.25,
            "w": 0.8,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "list",
          "text": "Create components to represent pieces of UI\nComponents receive state and return description of UI\nRoact actually updates your UI objects!",
          "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 14:18:26.029+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cbdf3439-1c58-419c-8889-6acb7fe76bac",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.8,
            "x": 0.05,
            "y": 0.55
          },
          "kind": "paragraph",
          "text": "Roact tries to emulate immediate mode ergonomics without giving up retained mode performance.",
          "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 14:18:26.029+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3f8aa95a-81d0-407f-9322-65c80e26a0b8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.4,
            "x": 0.05,
            "y": 0.07
          },
          "kind": "title",
          "text": "Dynamic UI: Roact",
          "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 14:18:26.029+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "578d9147-c2fb-4545-8df5-ab8b99060a6c",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "List presentation",
            "slug": "list-presentation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4ef7-777d-ba68-9074c2b3bcf1",
            "version": 1,
            "bodyDocId": null,
            "description": "Bulleted, numbered, or checklist enumerations.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "991eb21f-4765-4cea-933e-83e7be370379",
          "evidence": "list/bullet: Create components to represent pieces of UI Components receive state and return description of UI Roact actually updates your UI objects!",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 23:24:27.196273+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 24,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 24,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 18,
          "name": "Solution & Approach",
          "beatId": "6a595c98-d8a9-4487-ab18-da553cdcbd7b",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Solution & Approach",
            "slug": "consultants-gambit-solution-approach",
            "status": "active",
            "canonId": "019dd9b8-071c-7161-9184-580fdac7a4f9",
            "version": 1,
            "description": null
          },
          "evidence": "The deck presents solutions and demonstrates their effectiveness.",
          "position": 2,
          "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": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 25,
      "type": "appendix",
      "title": "The slide uses a dark theme with syntax-highlighted code snippets to explain the basic Roact API usage.",
      "function": "present_solution",
      "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_solution",
        "functionCanon": {
          "name": "Present solution",
          "slug": "present_solution",
          "status": "active",
          "canonId": "019de52d-15b8-71da-bd23-2b767850cbce",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 60,
        "componentCount": 8,
        "textChars": 235,
        "nDataPoints": 0,
        "notes": "The slide uses a dark theme with syntax-highlighted code snippets to explain the basic Roact API usage.",
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:27.637+00",
          "seconds": 7.359,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/25",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-25",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.12,
            "w": 0.08,
            "x": 0.9,
            "y": 0.02
          },
          "kind": "image",
          "text": "RDC",
          "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 14:18:27.637+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "efa6e503-9f70-498e-b4e0-f64cdd58c054",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.45,
            "x": 0.35,
            "y": 0.2
          },
          "kind": "paragraph",
          "text": "local e = Roact.createElement",
          "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 14:18:27.637+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6212fc6f-c80b-4a13-97e9-3074d10df470",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.35,
            "y": 0.75
          },
          "kind": "paragraph",
          "text": "Roact.mount(hello, LocalPlayer.PlayerGui)",
          "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 14:18:27.637+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9e6c5f4d-1717-4849-9be9-7efde403b567",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.05,
            "y": 0.4
          },
          "kind": "paragraph",
          "text": "Describe our UI:",
          "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 14:18:27.637+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b2752194-d6c9-4fc6-9061-f43cf6d0d460",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.05,
            "y": 0.2
          },
          "kind": "paragraph",
          "text": "Define a handy alias:",
          "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 14:18:27.637+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "be5280f2-2d99-4e12-8b04-35758171c0cc",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.05,
            "y": 0.75
          },
          "kind": "paragraph",
          "text": "Make our UI real:",
          "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 14:18:27.637+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "dcf588cf-5998-4d84-9350-4ef2fc403550",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.55,
            "x": 0.35,
            "y": 0.3
          },
          "kind": "paragraph",
          "text": "local hello = e(\"ScreenGui\", nil, {\n  Label = e(\"TextLabel\", {\n    Text = \"Hello, RDC!\"\n  })\n})",
          "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 14:18:27.637+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e5bebdd5-f16f-4052-a275-d55793f3421e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.3,
            "x": 0.05,
            "y": 0.05
          },
          "kind": "title",
          "text": "Hello, Roact!",
          "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 14:18:27.637+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "17a9bf06-1417-4b95-9232-14725d4884d9",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 26,
      "type": "appendix",
      "title": "The slide uses a step-by-step code breakdown to explain component creation.",
      "function": "present_solution",
      "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_solution",
        "functionCanon": {
          "name": "Present solution",
          "slug": "present_solution",
          "status": "active",
          "canonId": "019de52d-15b8-71da-bd23-2b767850cbce",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 75,
        "componentCount": 9,
        "textChars": 497,
        "nDataPoints": 0,
        "notes": "The slide uses a step-by-step code breakdown to explain component creation.",
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:23.446+00",
          "seconds": 3.134,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/26",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-26",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.12,
            "w": 0.08,
            "x": 0.9,
            "y": 0.02
          },
          "kind": "image",
          "text": "RDC",
          "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 14:18:23.446+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c3985f52-030c-41c8-b1da-2eba3e164010",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.22,
            "w": 0.75,
            "x": 0.3,
            "y": 0.75
          },
          "kind": "other",
          "text": "return e(\"Frame\", {\n  Size = UDim2.new(0, 400, 0, 300)\n}, children)\nend",
          "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 14:18:23.446+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "33aa3fe6-321e-4b56-be71-6115d5a7d8cd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.45,
            "x": 0.3,
            "y": 0.01
          },
          "kind": "other",
          "text": "local e = Roact.createElement",
          "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 14:18:23.446+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "786b3273-ab7f-4069-9cab-a80c72bf1a67",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.32,
            "w": 0.75,
            "x": 0.3,
            "y": 0.08
          },
          "kind": "other",
          "text": "local function Inventory(props)\n  local items = props.items\n  local children = {}\n  children.Layout = e(\"UIListLayout\", {\n    SortOrder = Enum.SortOrder.LayoutOrder\n  })",
          "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 14:18:23.446+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8442c966-bf78-46af-af44-7bed0e459547",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.32,
            "w": 0.75,
            "x": 0.3,
            "y": 0.42
          },
          "kind": "other",
          "text": "for index, item in ipairs(items) do\n  children[index] = e(\"TextLabel\", {\n    LayoutOrder = index,\n    Text = item.name,\n    Size = UDim2.new(1, 0, 0, 30)\n  })\nend",
          "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 14:18:23.446+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d2c288a9-2a87-430c-8b39-ca454cc43c43",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.29,
            "x": 0.02,
            "y": 0.79
          },
          "kind": "paragraph",
          "text": "Combine everything:",
          "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 14:18:23.446+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0255e33b-68e6-4ec9-85f1-c6c827511f3f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.25,
            "x": 0.06,
            "y": 0.02
          },
          "kind": "paragraph",
          "text": "Alias (surprise!):",
          "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 14:18:23.446+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "de63e512-a98c-497e-b733-474719791733",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.18,
            "x": 0.13,
            "y": 0.115
          },
          "kind": "paragraph",
          "text": "Component:",
          "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 14:18:23.446+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "eba1c197-3532-4450-9769-ce51bd4cc079",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.23,
            "x": 0.08,
            "y": 0.46
          },
          "kind": "paragraph",
          "text": "Create children:",
          "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 14:18:23.446+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ecd9f970-6fb7-4567-b6bc-bb2664d5f8a3",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 27,
      "type": "appendix",
      "title": "The slide illustrates a basic data-driven UI update pattern (reconciliation).",
      "function": "present_solution",
      "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_solution",
        "functionCanon": {
          "name": "Present solution",
          "slug": "present_solution",
          "status": "active",
          "canonId": "019de52d-15b8-71da-bd23-2b767850cbce",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 55,
        "componentCount": 6,
        "textChars": 318,
        "nDataPoints": 0,
        "notes": "The slide illustrates a basic data-driven UI update pattern (reconciliation).",
        "elementsJson": null,
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:23.378+00",
          "seconds": 3.055,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/27",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-27",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.15,
            "w": 0.65,
            "x": 0.29,
            "y": 0.25
          },
          "kind": "other",
          "text": "local ui = e(Inventory, { items = items }) local handle = Roact.mount(ui, PlayerGui)",
          "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 14:18:23.378+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4d60081e-9839-42fc-bbe3-dcfc22a19f0d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.18,
            "w": 0.65,
            "x": 0.29,
            "y": 0.05
          },
          "kind": "other",
          "text": "local items = { { name = \"Katana of Doom\" }, { name = \"Health Potion\" } }",
          "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 14:18:23.378+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "81dd5239-2f81-4e7b-8293-fb4314691b57",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.65,
            "x": 0.29,
            "y": 0.48
          },
          "kind": "other",
          "text": "table.insert(items, { name = \"Super Health Potion\" }) ui = e(Inventory, { items = items }) Roact.reconcile(handle, ui)",
          "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 14:18:23.378+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d65640fb-0ab6-4c32-90dd-ad79e5cb91db",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.28,
            "x": 0.02,
            "y": 0.52
          },
          "kind": "paragraph",
          "text": "Update data and UI:",
          "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 14:18:23.378+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5d3ec861-2e85-4be8-938f-b30ff515607d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.15,
            "x": 0.14,
            "y": 0.28
          },
          "kind": "paragraph",
          "text": "Create UI:",
          "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 14:18:23.378+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b4cdb381-4724-4226-91d5-eac764074f46",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.2,
            "x": 0.08,
            "y": 0.08
          },
          "kind": "paragraph",
          "text": "Describe data:",
          "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 14:18:23.378+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ccb5a4cc-5e49-447d-b02b-f74e6de4ee1d",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 28,
      "type": "appendix",
      "function": "other",
      "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": "other",
        "functionCanon": {
          "name": "Other (fallback)",
          "slug": "other",
          "status": "active",
          "canonId": "019de52d-15e1-75bc-99dc-07732380e2ce",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 29,
        "componentCount": 4,
        "textChars": 188,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:22.593+00",
          "seconds": 2.064,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/28",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-28",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.1,
            "w": 0.07,
            "x": 0.9,
            "y": 0.03
          },
          "kind": "image",
          "text": "RDC",
          "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 14:18:22.593+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1bf6382b-c143-44d1-9ae5-c9943625ee2f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.5,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "list",
          "text": "https://github.com/Roblox/roact\nhttps://github.com/Roblox/rodux\nhttps://github.com/Roblox/testez\nhttps://github.com/LPGhatguy/rdc-project",
          "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 14:18:22.593+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "59180650-7bc7-4623-a8b0-8389cf01c9e1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.3,
            "x": 0.05,
            "y": 0.7
          },
          "kind": "paragraph",
          "text": "DevForum: LPGhatguy\nTwitter: @LPGhatguy",
          "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 14:18:22.593+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "23b1ad6c-3038-4160-a532-23dd21117dfd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.25,
            "x": 0.05,
            "y": 0.07
          },
          "kind": "title",
          "text": "Resources",
          "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 14:18:22.593+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cddc9d90-911a-4c19-b22c-aecee19b7cdb",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 29,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 28,
          "name": "Impact & Next Steps",
          "beatId": "b6be9ebb-7a47-4f27-8f99-f90b9c4a91d1",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Impact & Next Steps",
            "slug": "consultants-gambit-impact-next-steps",
            "status": "active",
            "canonId": "019dd9b8-0849-7728-9ee9-fd1609c4c655",
            "version": 1,
            "description": null
          },
          "evidence": "The deck concludes with a call to action and resources for further learning.",
          "position": 4,
          "isPrimaryArc": true,
          "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": 0.8
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 29,
      "type": "setup",
      "function": "state_next_steps",
      "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": "state_next_steps",
        "functionCanon": {
          "name": "State next steps",
          "slug": "state_next_steps",
          "status": "active",
          "canonId": "019de52d-14ca-70ac-b534-971f458cdf29",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 4,
        "componentCount": 2,
        "textChars": 39,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": null,
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 14:18:25.402+00",
          "seconds": 4.62,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019de06f-a937-74e5-a93a-c869a1890818/29",
        "deck": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
        "deckAnchor": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-29",
        "deckJson": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.25,
            "w": 0.18,
            "x": 0.41,
            "y": 0.128
          },
          "kind": "image",
          "text": "RDC 18 Roblox Developer Conference",
          "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 14:18:25.402+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8fb96d58-8435-41da-982e-5786b2120217",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.2,
            "x": 0.4,
            "y": 0.5
          },
          "kind": "title",
          "text": "Q & A",
          "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 14:18:25.402+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "41de3fb1-50a3-448b-97d0-53f469fa49b6",
          "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": "694faaf8-aafd-4eb2-b38c-c1e285f3a2d1",
          "evidence": "Q & A",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 23:24:22.312119+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 29,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 29,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 28,
          "name": "Impact & Next Steps",
          "beatId": "b6be9ebb-7a47-4f27-8f99-f90b9c4a91d1",
          "matchId": "cfbc4a5f-92b3-43c5-b027-94fd5da71750",
          "beatType": {
            "name": "Impact & Next Steps",
            "slug": "consultants-gambit-impact-next-steps",
            "status": "active",
            "canonId": "019dd9b8-0849-7728-9ee9-fd1609c4c655",
            "version": 1,
            "description": null
          },
          "evidence": "The deck concludes with a call to action and resources for further learning.",
          "position": 4,
          "isPrimaryArc": true,
          "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": 0.8
        }
      ],
      "loops": [],
      "locked": true
    }
  ],
  "arcBeats": [
    {
      "from": 1,
      "to": 4,
      "label": "Situation & Context",
      "description": "The deck introduces the topic and provides context for the presentation."
    },
    {
      "from": 8,
      "to": 10,
      "label": "Problem & Complication",
      "description": "The deck highlights key challenges faced by developers."
    },
    {
      "from": 18,
      "to": 24,
      "label": "Solution & Approach",
      "description": "The deck presents solutions and demonstrates their effectiveness."
    },
    {
      "from": 19,
      "to": 23,
      "label": "Evidence & Proof",
      "description": "The deck provides evidence and examples to support the solutions."
    },
    {
      "from": 28,
      "to": 29,
      "label": "Impact & Next Steps",
      "description": "The deck concludes with a call to action and resources for further learning."
    }
  ],
  "loops": [
    {
      "from": 6,
      "to": 7,
      "label": "Golden Circle",
      "description": "What, How, Why"
    },
    {
      "from": 9,
      "to": 17,
      "label": "Hypothesis Test",
      "description": "Problem Statement and Solution Hypothesis"
    }
  ]
}