{
  "schemaVersion": "deck-intelligence.v1",
  "id": "019dd923-5ca1-7489-b635-d4f5f6e4252d",
  "slug": "a4788fdd9b16d6fa",
  "title": "Retail Holiday Newsletter 1",
  "subtitle": "Bain",
  "author": "Bain",
  "pageCount": 18,
  "kind": "consulting-deck",
  "orientation": "portrait",
  "aspectRatio": 0.773,
  "document": {
    "id": "019dd923-5ca1-7489-b635-d4f5f6e4252d",
    "slug": "a4788fdd9b16d6fa",
    "title": "Retail Holiday Newsletter 1",
    "rawTitle": "Retail Holiday Newsletter 1",
    "authorId": "Bain",
    "authorName": "Bain",
    "authorDisplay": "Bain",
    "kind": {
      "slug": "consulting-deck",
      "label": "Consulting deck"
    },
    "sourceType": {
      "slug": "strategy_consulting",
      "label": "Strategy consulting"
    },
    "fileName": "2010-Retail-Holiday-Newsletter-1.pdf",
    "sourceUrl": "https://media.bain.com/Images/Bain_2010_Retail_Holiday_Newsletter_1.pdf",
    "sourceDate": "2010-10-23 00:00:00",
    "presentationDate": null,
    "ingestedAt": "2026-04-23 20:51:31+00",
    "status": "ready",
    "pageCount": 18,
    "orientation": "portrait",
    "aspectRatio": 0.773,
    "targetCompany": null,
    "targetTicker": null,
    "metadata": {
      "local_root": "/tmp/legacy-images/a4788fdd9b16d6fa",
      "origin_corpus": "consulting"
    }
  },
  "coverage": {
    "pageCount": 18,
    "pagesIndexed": 18,
    "pagesWithImages": 18,
    "pagesWithMetadata": 18,
    "imageCoveragePct": 100,
    "metadataCoveragePct": 100,
    "componentCount": 116,
    "chartCount": 10,
    "metricSlides": 11,
    "toolMatches": 52,
    "documentToolMatches": 0,
    "frameworkMatches": 3,
    "arcMatches": 2,
    "beatMatches": 8,
    "loopMatches": 4,
    "patternMatches": 0,
    "storymakersMatch": true,
    "scoreAvailable": true,
    "reviewAvailable": true,
    "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": "019dd95a-0543-7581-99b0-cf9ec2453d73",
        "evidence": "Newsletter sets context (p.1-3), surfaces complication (p.4-5), introduces tier/segment frame (p.6-8), proves with data (p.9-11), closes with 3% forecast (p.12-13).",
        "isPrimary": true,
        "confidence": 78,
        "extraction": {
          "at": "2026-04-29 13:07:28.977035+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
        "evidence": "Document moves from facts (recovery data, p.1-5) to implications (tiers/segments diverge, p.6-11) to action (forecast + retailer guidance, p.12-13).",
        "isPrimary": false,
        "confidence": 62,
        "extraction": {
          "at": "2026-04-29 13:07:28.977035+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      }
    ],
    "beats": [
      {
        "to": 3,
        "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": "019dd95a-07a5-761b-9144-341fd0a6179b",
        "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
        "beatType": {
          "name": "Situation & Context",
          "slug": "consultants-gambit-situation-context",
          "status": "active",
          "canonId": "019dd9b8-05ae-741b-992d-65ee83c639b3",
          "version": 1,
          "description": null
        },
        "evidence": "Cover letter + holiday sales history + GAFO sales context",
        "position": 1,
        "isPrimaryArc": true,
        "parentBeatType": {
          "name": "Setup",
          "slug": "setup",
          "status": "active",
          "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
          "version": 1,
          "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
        },
        "alignedBlockIds": null,
        "matchConfidence": 78
      },
      {
        "to": 5,
        "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": 4,
        "name": "Problem & Complication",
        "beatId": "019dd95a-07a5-761b-9144-38cbd802e014",
        "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
        "beatType": {
          "name": "Problem & Complication",
          "slug": "consultants-gambit-problem-complication",
          "status": "active",
          "canonId": "019dd9b8-064a-777f-a374-e9a8c43dedd4",
          "version": 1,
          "description": null
        },
        "evidence": "'Where's the bounce-back?' + flat disposable income",
        "position": 2,
        "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": 78
      },
      {
        "to": 8,
        "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": 6,
        "name": "Solution & Approach",
        "beatId": "019dd95a-07a5-761b-9144-3f0d16d2447f",
        "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
        "beatType": {
          "name": "Solution & Approach",
          "slug": "consultants-gambit-solution-approach",
          "status": "active",
          "canonId": "019dd9b8-071c-7161-9184-580fdac7a4f9",
          "version": 1,
          "description": null
        },
        "evidence": "Three-tier household frame + 'one size doesn't fit all' segments",
        "position": 3,
        "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": 78
      },
      {
        "to": 11,
        "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": 9,
        "name": "Evidence & Proof",
        "beatId": "019dd95a-07a5-761b-9144-43581fadca11",
        "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
        "beatType": {
          "name": "Evidence & Proof",
          "slug": "consultants-gambit-evidence-proof",
          "status": "active",
          "canonId": "019dd9b8-07b1-7688-8e1e-7637fec3802a",
          "version": 1,
          "description": null
        },
        "evidence": "GAFO segment growth table, sales change vs precession, same-store sales",
        "position": 4,
        "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": 78
      },
      {
        "to": 13,
        "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": 12,
        "name": "Impact & Next Steps",
        "beatId": "019dd95a-07a5-761b-9144-47a5d409f267",
        "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
        "beatType": {
          "name": "Impact & Next Steps",
          "slug": "consultants-gambit-impact-next-steps",
          "status": "active",
          "canonId": "019dd9b8-0849-7728-9ee9-fd1609c4c655",
          "version": 1,
          "description": null
        },
        "evidence": "'Happy holiday season' verdict + 3% Bain forecast vs peer forecasts",
        "position": 5,
        "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": 78
      },
      {
        "to": 5,
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 1,
        "name": "The Facts (What)",
        "beatId": "019dd95a-07a5-761b-9144-4b7cd6537801",
        "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
        "beatType": {
          "name": "The Facts (What)",
          "slug": "triple-take-the-facts-what",
          "status": "active",
          "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
          "version": 1,
          "description": null
        },
        "evidence": "Recovery data, recession context, income trajectory",
        "position": 1,
        "isPrimaryArc": false,
        "parentBeatType": {
          "name": "Setup",
          "slug": "setup",
          "status": "active",
          "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
          "version": 1,
          "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
        },
        "alignedBlockIds": null,
        "matchConfidence": 62
      },
      {
        "to": 11,
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 6,
        "name": "The Implications (So What)",
        "beatId": "019dd95a-07a5-761b-9144-4ec6ce8acdb2",
        "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
        "beatType": {
          "name": "The Implications (So What)",
          "slug": "triple-take-the-implications-so-what",
          "status": "active",
          "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
          "version": 1,
          "description": null
        },
        "evidence": "Tier divergence and GAFO segment differentiation",
        "position": 2,
        "isPrimaryArc": false,
        "parentBeatType": {
          "name": "Reflection",
          "slug": "reflection",
          "status": "active",
          "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
          "version": 1,
          "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
        },
        "alignedBlockIds": null,
        "matchConfidence": 62
      },
      {
        "to": 13,
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 12,
        "name": "The Action (Now What)",
        "beatId": "019dd95a-07a5-761b-9144-52add3dcb63e",
        "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
        "beatType": {
          "name": "The Action (Now What)",
          "slug": "triple-take-the-action-now-what",
          "status": "active",
          "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
          "version": 1,
          "description": null
        },
        "evidence": "Forecast + 'retailers must straddle multiple selling strategies'",
        "position": 3,
        "isPrimaryArc": false,
        "parentBeatType": {
          "name": "Resolution",
          "slug": "resolution",
          "status": "active",
          "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
          "version": 1,
          "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
        },
        "alignedBlockIds": null,
        "matchConfidence": 62
      }
    ],
    "loops": [
      {
        "to": 5,
        "from": 2,
        "loop": {
          "name": "02_pattern_hunter",
          "slug": "02-pattern-hunter",
          "status": "active",
          "bestFor": "Time-pressed audiences, building consensus, when data is strong",
          "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
          "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
          "familyLabel": null,
          "categoryName": "Logical Reasoning",
          "categorySlug": "logical-reasoning"
        },
        "matchId": "019dd95a-088c-724c-b312-ea04694b5fcd",
        "evidence": "Charts 1-5 layer historical growth, GAFO YoY, seasonally adjusted sales, and disposable income to build the recovery-with-caveat pattern.",
        "position": 1,
        "objective": "Stack multiple data series to argue recovery is real but income-constrained",
        "confidence": 72,
        "extraction": {
          "at": "2026-04-29 13:07:29.689431+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 7,
        "from": 6,
        "loop": {
          "name": "34_segmentation_split",
          "slug": "34-segmentation-split",
          "status": "active",
          "bestFor": "Customer analysis, market research, resource allocation",
          "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
          "description": "Divide a whole into meaningful segments to reveal hidden patterns",
          "familyLabel": null,
          "categoryName": "Consulting Framework",
          "categorySlug": "consulting-framework"
        },
        "matchId": "019dd95a-088c-724c-b312-eda89a3dbc5d",
        "evidence": "Chart 6 explicitly defines Affluent / Aspirational / Lower-Income tiers; Chart 7 shows employment status differs sharply by tier.",
        "position": 2,
        "objective": "Split the household population into three tiers behaving differently",
        "confidence": 88,
        "extraction": {
          "at": "2026-04-29 13:07:29.689431+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 11,
        "from": 8,
        "loop": {
          "name": "06_zoom_in",
          "slug": "06-zoom-in",
          "status": "active",
          "bestFor": "Technical deep-dives, case studies, detailed analysis",
          "canonId": "019dd956-6846-74db-82be-dff5b058b072",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Big Picture -> Key Area of Focus -> Specific Detail -> Implication",
          "description": "Start broad, then progressively focus on specific details that prove your point",
          "familyLabel": null,
          "categoryName": "Analysis",
          "categorySlug": "analysis"
        },
        "matchId": "019dd95a-088c-724c-b312-f04974775a1e",
        "evidence": "Pages 8-11 zoom from 'one size doesn't fit all' into segment-level growth tables and same-store sales lines.",
        "position": 3,
        "objective": "Drill from total GAFO into per-segment performance and same-store divergence",
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:29.689431+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 13,
        "from": 12,
        "loop": {
          "name": "41_so_what_cascade",
          "slug": "41-so-what-cascade",
          "status": "active",
          "bestFor": "Data presentations, executive summaries, driving to recommendations",
          "canonId": "019dd956-769f-7208-afbc-f28985c6f4fb",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Data -> So What? (Insight 1) -> So What? (Insight 2) -> So What? (The Action)",
          "description": "Chain insights together, each answering 'so what?' until you reach the actionable conclusion",
          "familyLabel": null,
          "categoryName": "Consulting Framework",
          "categorySlug": "consulting-framework"
        },
        "matchId": "019dd95a-088c-724c-b312-f6c49a1d7401",
        "evidence": "p.12 'Hopes are high...' synthesis + p.13 Bain 3% forecast benchmarked against peer forecasts and newsletter schedule.",
        "position": 4,
        "objective": "Translate accumulated data into a forecast and an action cadence",
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:29.689431+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      }
    ],
    "tools": [
      {
        "tool": {
          "name": "Big Idea Formula",
          "slug": "big-idea-formula",
          "status": "active",
          "bestFor": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
          "canonId": "019dd956-7dd1-74d7-9866-ffdef19ecfbf",
          "version": 1,
          "bodyDocId": "c30d7484-69e0-4e21-82cf-20fa0966869e",
          "description": "Nancy Duarte's articulation of how to frame a presentation's central message: the speaker's unique point of view plus what's at stake for the audience, expressed as one complete declarative sentence. The narrative-driven counterpart to Minto's analytical governing thought.",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-173f-7139-aafd-a62ac5717fed",
        "evidence": "Top-of-document POV + stakes ('cautious optimism, 3% growth')",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 1,
        "whyItWorks": "Solves the topic-not-thesis trap and the stake-less recommendation trap simultaneously. A single declarative sentence with a verb forces the speaker's stance into the room; routing the consequence through the word 'you' translates internal urgency into the audience's currency. The result is short enough to be repeated after the meeting — and that repetition is the persuasion mechanism.",
        "antipattern": "A topic dressed as a thesis ('Sustainability Roadmap 2026'), a stake attached to the speaker rather than the audience, two ideas spliced with 'and', abstract verbs (leverage / unlock / empower) that survive deletion, or writing the Big Idea after the deck is already built so the slides don't actually defend it.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to commit to a single declarative thesis before slide one — a sentence that names the speaker's stance and routes a consequence through the audience's currency. Acts as the filter every slide, anecdote, and chart must ladder up to."
      },
      {
        "tool": {
          "name": "SCQA Framework",
          "slug": "scqa-framework",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-7bcb-763f-bdf6-1dfedf3bd36c",
          "version": 1,
          "bodyDocId": "019df22a-a0b0-719e-937e-2ac31e53d32c",
          "description": "Situation, Complication, Question, Answer - structured problem framing",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Architect",
        "layer": "block",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-173f-7139-aafd-ab2b20a2976e",
        "evidence": "Intro letter sequences situation, complication ('signals are mixed'), and answer (3% forecast)",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 1,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Storytelling Effect",
          "slug": "storytelling-effect",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-981b-74f9-9096-5c8df03dab5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Stories are remembered up to 22x better than facts alone",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-173f-7139-aafd-ae6c5aed53eb",
        "evidence": "Memo opens with To/From and human image strip rather than bullet list",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 55,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 1,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Curiosity Gap",
          "slug": "curiosity-gap",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9703-74ef-8b85-96dfd8525025",
          "version": 1,
          "bodyDocId": null,
          "description": "People seek missing information - create open questions that demand resolution",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-173f-7139-aafd-d05da8363f9c",
        "evidence": "Question headline opens an info gap the section then closes",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 4,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "The Rule of Three",
          "slug": "the-rule-of-three",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-8962-75cf-b4f8-9394501a6f33",
          "version": 1,
          "bodyDocId": null,
          "description": "Ideas presented in threes are more memorable and satisfying",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-173f-7139-aafd-f61cd044c9c5",
        "evidence": "Three tiers framing chosen over finer segmentation",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Three Pillars",
          "slug": "three-pillars",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-81ef-7455-a365-b234d95a6bbb",
          "version": 1,
          "bodyDocId": null,
          "description": "Three major supporting arguments that are MECE and address key concerns",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Architect",
        "layer": "block",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-173f-7139-aafd-f0ad95a3f27f",
        "evidence": "Three MECE tiers organize the segmentation argument",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-173f-7139-aafd-9f9679e27a03",
        "evidence": "Headline 'It's going to be a good season... at least compared to the last few' states the insight",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 90,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 1,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Core Message Extraction",
          "slug": "core-message-extraction",
          "status": "active",
          "bestFor": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
          "canonId": "019dd956-bc71-707d-8867-1b2e810175cf",
          "version": 1,
          "bodyDocId": "f85613cb-4b77-462f-bfe6-3b862516e1a6",
          "description": "The discipline of distilling raw analysis, data, or content into a single declarative sentence — the slide's core message — that the audience would walk away with if they remembered nothing else. Process, not artefact: extraction questions run on the raw content until one sentence falls out.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-173f-7139-aafd-a1322fb7cb83",
        "evidence": "Opening paragraph crystallizes thesis: 'forecasting GAFO sales growth of 3%'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
        "confidence": 82,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 1,
        "whyItWorks": "Solves the two failure modes of slide writing simultaneously: the topic title (which outsources interpretation to the audience and produces three different conclusions in three different heads) and the multi-thesis stapler (which exceeds working memory and gets remembered as fragments). Aligns with how readers actually consume decks — Heath & Heath's Find the Core, the journalist's nut graf, and Minto's governing thought all converge on the same cognitive economics.",
        "antipattern": "Topic titles disguised as core messages (Customer satisfaction, no verb, no stake); multi-thesis sentences stapled with and; hedged sentences (may show signs of possible softening); chart-caption titles (Revenue fell 4%) that restate what the chart already shows instead of naming the so-what; meta-commentary (this slide explores...) that describes the slide rather than concluding it.",
        "cardinality": null,
        "narrativePurpose": "Forces the slide author to do the interpretive work before the slide ships, so the audience does not have to do it during the meeting. Wins the WYSIATI battle on purpose — the loudest fragment on the page becomes the author's chosen sentence rather than whichever chart label happens to be largest."
      },
      {
        "tool": {
          "name": "Executive summary",
          "slug": "executive-summary",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4b63-72d5-9734-da757d91ca61",
          "version": 1,
          "bodyDocId": null,
          "description": "A condensed view of the entire argument on a single slide / block.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "8261f84a-d152-4b6e-9767-b9e8af07c333",
        "evidence": "Bain is forecasting holiday GAFO sales growth of 3% for the November-December period",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-17 03:15:22.625342+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 1,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafd-b63d908df3c5",
        "evidence": "30/20/10-year average reference lines annotated; 'positive every month since February' bracket",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafd-b24ed5a417fb",
        "evidence": "Bar chart for 1968-2010 holiday growth + line chart for YoY rolling average",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Small Multiples",
          "slug": "small-multiples",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
          "version": 1,
          "bodyDocId": null,
          "description": "Repeating similar charts for comparison across categories or time",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafd-bf1d68957f52",
        "evidence": "Two stacked time-series charts on the same horizontal scale",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 60,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Von Restorff Effect",
          "slug": "von-restorff-effect",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-beab-73d8-9f62-30d0332e926e",
          "version": 1,
          "bodyDocId": null,
          "description": "Items that stand out are noticed and remembered - make key points visually distinct",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafd-bb93787670d4",
        "evidence": "2010F bar shaded yellow against blue history bars",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafd-c1c583d27f0a",
        "evidence": "Seasonally adjusted GAFO sales line chart",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Data-Ink Ratio",
          "slug": "data-ink-ratio",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-afc8-70da-b378-92834d36fde6",
          "version": 1,
          "bodyDocId": null,
          "description": "Maximize data, minimize non-data ink - remove chartjunk and decoration",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafd-c4b3dfc067dc",
        "evidence": "Sparse single-line chart, minimal decoration",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 60,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-173f-7139-aafd-ca4f14e5733b",
        "evidence": "Section header 'The recession may be over, but where's the bounce-back?'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 88,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 4,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-173f-7139-aafd-ce2af118f246",
        "evidence": "'550,000 to 650,000 jobs', '7.9% productivity', specific named sources",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 4,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Executive summary",
          "slug": "executive-summary",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4b63-72d5-9734-da757d91ca61",
          "version": 1,
          "bodyDocId": null,
          "description": "A condensed view of the entire argument on a single slide / block.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "f97d8358-b791-4f5e-825b-b6a504b18e99",
        "evidence": "Although the recession officially ended 16 months ago, it's clear that the recovery is going to be long and bumpy.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-17 03:15:22.789524+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 4,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-173f-7139-aafd-d4de40dac353",
        "evidence": "Callout 'Disposable income growth... has completely flattened' is the so-what",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafd-dc6a2dab4489",
        "evidence": "CAGR figure called out on the chart",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chartjunk Elimination",
          "slug": "chartjunk-elimination",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
          "version": 1,
          "bodyDocId": null,
          "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "7603638f-60aa-44ac-9201-c8818f303595",
        "evidence": "Line chart showing real per capita disposable income from 2000 to 2010 with CAGR annotations.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-17 03:52:35.395331+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Contrast Principle",
          "slug": "contrast-principle",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bf0f-73ae-b9df-e60508cdaa65",
          "version": 1,
          "bodyDocId": null,
          "description": "Higher visual weight draws attention - use contrast strategically for emphasis",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafd-d9d7861b415f",
        "evidence": "Contrasts historical 2% trajectory with -0.3% CAGR flatline",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "2x2 matrix",
          "slug": "matrix-2x2",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-50ab-72d1-8afb-3ab0a38e32a8",
          "version": 1,
          "bodyDocId": null,
          "description": "BCG matrix, importance/urgency, any axes-and-quadrants frame.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "86b8b164-514e-4304-a661-0cb34def0548",
        "evidence": "Comparison matrix of Affluent, Aspirational, and Lower Income tiers across Income, Population, Consumption, Jobs, and Assets.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-17 03:52:35.47995+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-173f-7139-aafd-e1f3b6fe4441",
        "evidence": "Title 'Three distinct US household tiers' states the framework",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 88,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Color Strategy",
          "slug": "color-strategy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
          "version": 1,
          "bodyDocId": null,
          "description": "Using color for emphasis, categories, sentiment, and hierarchy",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafd-e4069909521a",
        "evidence": "Blue/red/grey columns encode Affluent/Aspirational/Lower-Income",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Law of Similarity",
          "slug": "law-of-similarity",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-c025-70d9-a411-8efa41ae179b",
          "version": 1,
          "bodyDocId": null,
          "description": "Similar-looking elements perceived as related - consistent styling for related concepts",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafd-ec2cecbd001d",
        "evidence": "Consistent column styling groups all attributes per tier",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Small Multiples",
          "slug": "small-multiples",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
          "version": 1,
          "bodyDocId": null,
          "description": "Repeating similar charts for comparison across categories or time",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafd-ea5e5c835922",
        "evidence": "Repeating row structure: Income, Population, Consumption, Jobs, Assets",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "11bf495f-0cff-4122-b23c-10c531ddd4c0",
        "evidence": "Stacked bar chart showing employment status by income tier",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-17 03:52:35.565479+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Color Strategy",
          "slug": "color-strategy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
          "version": 1,
          "bodyDocId": null,
          "description": "Using color for emphasis, categories, sentiment, and hierarchy",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafd-fa907cc21520",
        "evidence": "Tier color palette carried over from p.6",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Contrast Principle",
          "slug": "contrast-principle",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bf0f-73ae-b9df-e60508cdaa65",
          "version": 1,
          "bodyDocId": null,
          "description": "Higher visual weight draws attention - use contrast strategically for emphasis",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafe-02369df99def",
        "evidence": "Chart 7 contrasts ~4% vs ~30% unemployment by tier",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Small Multiples",
          "slug": "small-multiples",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
          "version": 1,
          "bodyDocId": null,
          "description": "Repeating similar charts for comparison across categories or time",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafd-ff86f4f6a3a8",
        "evidence": "Employment status broken down repeatedly across tiers",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-173f-7139-aafe-047e8b76f9f9",
        "evidence": "Header 'Some GAFO segments are on firmer footing than others' is the insight",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 88,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Concrete Language",
          "slug": "concrete-language",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
          "version": 1,
          "bodyDocId": null,
          "description": "Using specific sensory details instead of abstract terms",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-173f-7139-aafe-11ea9ae151cb",
        "evidence": "Verbatim quotes: 'Because money is so tight, I won't be able to buy too many gifts'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Singularity Effect",
          "slug": "singularity-effect",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-dcd3-7287-94d8-5a49496c2ddb",
          "version": 1,
          "bodyDocId": null,
          "description": "People care more about individuals than statistics - use specific examples",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-173f-7139-aafe-0da71bbbac60",
        "evidence": "Specific named families (Mrs. Smith, Mrs. Green) personify each tier",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Story Moments",
          "slug": "story-moments",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-ae4e-768d-a18b-108e6cda511e",
          "version": 1,
          "bodyDocId": null,
          "description": "Design key emotional beats: The Shock, The Vision, The Proof, The Choice, The Call",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-173f-7139-aafe-09b594892458",
        "evidence": "Smiths/Greens/Johnsons family vignettes anchor the segmentation emotionally",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafe-20ea525ad6f9",
        "evidence": "Inline color-coded legend labels each line directly",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafe-153fecd218be",
        "evidence": "Multi-series line chart for segment growth + accompanying data table",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Color Strategy",
          "slug": "color-strategy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
          "version": 1,
          "bodyDocId": null,
          "description": "Using color for emphasis, categories, sentiment, and hierarchy",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafe-19eef29d4fd8",
        "evidence": "Distinct colors per GAFO segment line",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Small Multiples",
          "slug": "small-multiples",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
          "version": 1,
          "bodyDocId": null,
          "description": "Repeating similar charts for comparison across categories or time",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafe-1eaae06a01e3",
        "evidence": "Table 1 repeats the same metric structure across six segments",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 60,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafe-2d4ac27a1d0f",
        "evidence": "Callout text annotates the chart with the so-what",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 10,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafe-2437500b8eb9",
        "evidence": "Comparative bar chart of TTM sales change by segment",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 10,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Von Restorff Effect",
          "slug": "von-restorff-effect",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-beab-73d8-9f62-30d0332e926e",
          "version": 1,
          "bodyDocId": null,
          "description": "Items that stand out are noticed and remembered - make key points visually distinct",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafe-280a218cf84e",
        "evidence": "Callout flags 'the only segment that has seen net growth'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 10,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-173f-7139-aafe-311a1b6dbb38",
        "evidence": "Callout: midtier department stores 'must effectively straddle multiple selling strategies'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafe-362d6f4abc44",
        "evidence": "Same-store sales lines annotated with retail format labels",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 72,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafe-381f2ce515bf",
        "evidence": "3-month rolling average line chart for same-store sales",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019dd95a-173f-7139-aafe-3e1970005c2c",
        "evidence": "Section title 'Here's to a happy holiday season!'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 85,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Closing Techniques",
          "slug": "closing-techniques",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-af13-774b-a4fd-7db0a3a88d51",
          "version": 1,
          "bodyDocId": null,
          "description": "Strong endings: Callback, challenge, vision, clear CTA, memorable line",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-173f-7139-aafe-41ab21780df0",
        "evidence": "Vision-style close: 'Hopes are high that this holiday season will be the best in years'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Emotional Appeal",
          "slug": "emotional-appeal",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bde9-7668-8be7-0097678fec59",
          "version": 1,
          "bodyDocId": null,
          "description": "Connecting to audience feelings rather than just logic",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-173f-7139-aafe-45c8171e8634",
        "evidence": "Optimistic register tempered with 'growth is not a given' caution",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 60,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Annotation",
          "slug": "annotation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
          "version": 1,
          "bodyDocId": null,
          "description": "Adding explanatory labels to highlight key data points",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafe-4c09b8504bcc",
        "evidence": "Measure + Period columns annotate each forecast bar",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Authority Bias",
          "slug": "authority-bias",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-c38d-70b9-a284-b2b479763356",
          "version": 1,
          "bodyDocId": null,
          "description": "Expert opinions are weighted more heavily - cite credible sources",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Architect",
          "Storyteller"
        ],
        "matchId": "019dd95a-173f-7139-aafe-55bf3b0d0137",
        "evidence": "Cites named research authorities to validate Bain's 3% number",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Social Validation",
          "slug": "social-validation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-ddaa-77f9-890c-a1cf082c5ccd",
          "version": 1,
          "bodyDocId": null,
          "description": "Showing others have done something, especially similar others",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019dd95a-173f-7139-aafe-52a3048cdc91",
        "evidence": "Deloitte, NRF, Retail Forward, ICSC peer forecasts shown alongside Bain's",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Von Restorff Effect",
          "slug": "von-restorff-effect",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-beab-73d8-9f62-30d0332e926e",
          "version": 1,
          "bodyDocId": null,
          "description": "Items that stand out are noticed and remembered - make key points visually distinct",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019dd95a-173f-7139-aafe-4b39fcd8f5bf",
        "evidence": "Bain's bar shaded yellow vs blue peer forecasts",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 88,
        "extraction": {
          "at": "2026-04-29 13:07:33.438368+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      }
    ],
    "frameworks": [
      {
        "matchId": "8ac5244e-1529-4504-a18a-55864fef88c3",
        "evidence": "Identified three tiers of households: the affluent, the aspirational, and the lower income.",
        "framework": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-05-02 19:38:19.832+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "frameworkName": "market-segmentation-pyramid"
      },
      {
        "matchId": "7167c1d1-dd20-4d12-a3a1-081f5cc41376",
        "evidence": "The slide explicitly segments the US population into three distinct tiers based on economic characteristics.",
        "framework": null,
        "confidence": 1,
        "extraction": {
          "at": "2026-05-02 19:38:20.005+00",
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "frameworkName": "audience-segmentation"
      },
      {
        "matchId": "019dd95a-1d21-7467-a463-82b5584d24da",
        "evidence": "Chart 6 labels three tiers with income bands and behavioral attributes",
        "framework": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-04-29 13:07:34.940444+00",
          "model": "claude-legacy",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "frameworkName": "Three-Tier Household Segmentation (Affluent / Aspirational / Lower-Income)"
      }
    ],
    "patterns": []
  },
  "storymakers": {
    "model": "claude-cli-sonnet-4.6",
    "backend": null,
    "rawJson": {
      "arc": {
        "id": 1,
        "slug": "consultants-gambit",
        "beats": [
          {
            "name": "Situation & Context",
            "end_page": 3,
            "evidence": "Cover letter + holiday sales history + GAFO sales context",
            "position": 1,
            "start_page": 1
          },
          {
            "name": "Problem & Complication",
            "end_page": 5,
            "evidence": "'Where's the bounce-back?' + flat disposable income",
            "position": 2,
            "start_page": 4
          },
          {
            "name": "Solution & Approach",
            "end_page": 8,
            "evidence": "Three-tier household frame + 'one size doesn't fit all' segments",
            "position": 3,
            "start_page": 6
          },
          {
            "name": "Evidence & Proof",
            "end_page": 11,
            "evidence": "GAFO segment growth table, sales change vs precession, same-store sales",
            "position": 4,
            "start_page": 9
          },
          {
            "name": "Impact & Next Steps",
            "end_page": 13,
            "evidence": "'Happy holiday season' verdict + 3% Bain forecast vs peer forecasts",
            "position": 5,
            "start_page": 12
          }
        ],
        "evidence": "Newsletter sets context (p.1-3), surfaces complication (p.4-5), introduces tier/segment frame (p.6-8), proves with data (p.9-11), closes with 3% forecast (p.12-13).",
        "confidence": 78
      },
      "loops": [
        {
          "id": 2,
          "slug": "02-pattern-hunter",
          "end_page": 5,
          "evidence": "Charts 1-5 layer historical growth, GAFO YoY, seasonally adjusted sales, and disposable income to build the recovery-with-caveat pattern.",
          "position": 1,
          "objective": "Stack multiple data series to argue recovery is real but income-constrained",
          "confidence": 72,
          "start_page": 2
        },
        {
          "id": 34,
          "slug": "34-segmentation-split",
          "end_page": 7,
          "evidence": "Chart 6 explicitly defines Affluent / Aspirational / Lower-Income tiers; Chart 7 shows employment status differs sharply by tier.",
          "position": 2,
          "objective": "Split the household population into three tiers behaving differently",
          "confidence": 88,
          "start_page": 6
        },
        {
          "id": 6,
          "slug": "06-zoom-in",
          "end_page": 11,
          "evidence": "Pages 8-11 zoom from 'one size doesn't fit all' into segment-level growth tables and same-store sales lines.",
          "position": 3,
          "objective": "Drill from total GAFO into per-segment performance and same-store divergence",
          "confidence": 80,
          "start_page": 8
        },
        {
          "id": 41,
          "slug": "41-so-what-cascade",
          "end_page": 13,
          "evidence": "p.12 'Hopes are high...' synthesis + p.13 Bain 3% forecast benchmarked against peer forecasts and newsletter schedule.",
          "position": 4,
          "objective": "Translate accumulated data into a forecast and an action cadence",
          "confidence": 70,
          "start_page": 12
        }
      ],
      "slide_tools": [
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Headline 'It's going to be a good season... at least compared to the last few' states the insight",
              "confidence": 90
            },
            {
              "id": 153,
              "slug": "core-message-extraction",
              "layer": "Slide",
              "evidence": "Opening paragraph crystallizes thesis: 'forecasting GAFO sales growth of 3%'",
              "confidence": 82
            },
            {
              "id": 6,
              "slug": "big-idea-formula",
              "layer": "Block",
              "evidence": "Top-of-document POV + stakes ('cautious optimism, 3% growth')",
              "confidence": 75
            },
            {
              "id": 1,
              "slug": "scqa-framework",
              "layer": "Block",
              "evidence": "Intro letter sequences situation, complication ('signals are mixed'), and answer (3% forecast)",
              "confidence": 70
            },
            {
              "id": 70,
              "slug": "storytelling-effect",
              "layer": "Block",
              "evidence": "Memo opens with To/From and human image strip rather than bullet list",
              "confidence": 55
            }
          ],
          "page_number": 1
        },
        {
          "tools": [
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Bar chart for 1968-2010 holiday growth + line chart for YoY rolling average",
              "confidence": 85
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "30/20/10-year average reference lines annotated; 'positive every month since February' bracket",
              "confidence": 90
            },
            {
              "id": 158,
              "slug": "von-restorff-effect",
              "layer": "Slide",
              "evidence": "2010F bar shaded yellow against blue history bars",
              "confidence": 85
            },
            {
              "id": 133,
              "slug": "small-multiples",
              "layer": "Slide",
              "evidence": "Two stacked time-series charts on the same horizontal scale",
              "confidence": 60
            }
          ],
          "page_number": 2
        },
        {
          "tools": [
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Seasonally adjusted GAFO sales line chart",
              "confidence": 70
            },
            {
              "id": 125,
              "slug": "data-ink-ratio",
              "layer": "Slide",
              "evidence": "Sparse single-line chart, minimal decoration",
              "confidence": 60
            }
          ],
          "page_number": 3
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Section header 'The recession may be over, but where's the bounce-back?'",
              "confidence": 88
            },
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "'550,000 to 650,000 jobs', '7.9% productivity', specific named sources",
              "confidence": 75
            },
            {
              "id": 67,
              "slug": "curiosity-gap",
              "layer": "Block",
              "evidence": "Question headline opens an info gap the section then closes",
              "confidence": 70
            }
          ],
          "page_number": 4
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout 'Disposable income growth... has completely flattened' is the so-what",
              "confidence": 80
            },
            {
              "id": 159,
              "slug": "contrast-principle",
              "layer": "Slide",
              "evidence": "Contrasts historical 2% trajectory with -0.3% CAGR flatline",
              "confidence": 70
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "CAGR figure called out on the chart",
              "confidence": 75
            }
          ],
          "page_number": 5
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'Three distinct US household tiers' states the framework",
              "confidence": 88
            },
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "Blue/red/grey columns encode Affluent/Aspirational/Lower-Income",
              "confidence": 90
            },
            {
              "id": 133,
              "slug": "small-multiples",
              "layer": "Slide",
              "evidence": "Repeating row structure: Income, Population, Consumption, Jobs, Assets",
              "confidence": 85
            },
            {
              "id": 161,
              "slug": "law-of-similarity",
              "layer": "Slide",
              "evidence": "Consistent column styling groups all attributes per tier",
              "confidence": 75
            },
            {
              "id": 16,
              "slug": "three-pillars",
              "layer": "Block",
              "evidence": "Three MECE tiers organize the segmentation argument",
              "confidence": 78
            },
            {
              "id": 34,
              "slug": "the-rule-of-three",
              "layer": "Block",
              "evidence": "Three tiers framing chosen over finer segmentation",
              "confidence": 80
            }
          ],
          "page_number": 6
        },
        {
          "tools": [
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "Tier color palette carried over from p.6",
              "confidence": 78
            },
            {
              "id": 133,
              "slug": "small-multiples",
              "layer": "Slide",
              "evidence": "Employment status broken down repeatedly across tiers",
              "confidence": 75
            },
            {
              "id": 159,
              "slug": "contrast-principle",
              "layer": "Slide",
              "evidence": "Chart 7 contrasts ~4% vs ~30% unemployment by tier",
              "confidence": 65
            }
          ],
          "page_number": 7
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Header 'Some GAFO segments are on firmer footing than others' is the insight",
              "confidence": 88
            },
            {
              "id": 122,
              "slug": "story-moments",
              "layer": "Slide",
              "evidence": "Smiths/Greens/Johnsons family vignettes anchor the segmentation emotionally",
              "confidence": 70
            },
            {
              "id": 224,
              "slug": "singularity-effect",
              "layer": "Slide",
              "evidence": "Specific named families (Mrs. Smith, Mrs. Green) personify each tier",
              "confidence": 75
            },
            {
              "id": 154,
              "slug": "concrete-language",
              "layer": "Slide",
              "evidence": "Verbatim quotes: 'Because money is so tight, I won't be able to buy too many gifts'",
              "confidence": 78
            }
          ],
          "page_number": 8
        },
        {
          "tools": [
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Multi-series line chart for segment growth + accompanying data table",
              "confidence": 85
            },
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "Distinct colors per GAFO segment line",
              "confidence": 75
            },
            {
              "id": 133,
              "slug": "small-multiples",
              "layer": "Slide",
              "evidence": "Table 1 repeats the same metric structure across six segments",
              "confidence": 60
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Inline color-coded legend labels each line directly",
              "confidence": 70
            }
          ],
          "page_number": 9
        },
        {
          "tools": [
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Comparative bar chart of TTM sales change by segment",
              "confidence": 75
            },
            {
              "id": 158,
              "slug": "von-restorff-effect",
              "layer": "Slide",
              "evidence": "Callout flags 'the only segment that has seen net growth'",
              "confidence": 65
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Callout text annotates the chart with the so-what",
              "confidence": 75
            }
          ],
          "page_number": 10
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout: midtier department stores 'must effectively straddle multiple selling strategies'",
              "confidence": 80
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Same-store sales lines annotated with retail format labels",
              "confidence": 72
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "3-month rolling average line chart for same-store sales",
              "confidence": 70
            }
          ],
          "page_number": 11
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Section title 'Here's to a happy holiday season!'",
              "confidence": 85
            },
            {
              "id": 124,
              "slug": "closing-techniques",
              "layer": "Slide",
              "evidence": "Vision-style close: 'Hopes are high that this holiday season will be the best in years'",
              "confidence": 78
            },
            {
              "id": 156,
              "slug": "emotional-appeal",
              "layer": "Slide",
              "evidence": "Optimistic register tempered with 'growth is not a given' caution",
              "confidence": 60
            }
          ],
          "page_number": 12
        },
        {
          "tools": [
            {
              "id": 158,
              "slug": "von-restorff-effect",
              "layer": "Slide",
              "evidence": "Bain's bar shaded yellow vs blue peer forecasts",
              "confidence": 88
            },
            {
              "id": 138,
              "slug": "annotation",
              "layer": "Slide",
              "evidence": "Measure + Period columns annotate each forecast bar",
              "confidence": 80
            },
            {
              "id": 226,
              "slug": "social-validation",
              "layer": "Slide",
              "evidence": "Deloitte, NRF, Retail Forward, ICSC peer forecasts shown alongside Bain's",
              "confidence": 75
            },
            {
              "id": 169,
              "slug": "authority-bias",
              "layer": "Slide",
              "evidence": "Cites named research authorities to validate Bain's 3% number",
              "confidence": 65
            }
          ],
          "page_number": 13
        }
      ],
      "slides_seen": 18,
      "deck_summary": "A text-heavy Bain client newsletter that loosely follows the Consultant's Gambit (context → complication → segmentation frame → segment evidence → forecast); narrative is data-anchored and segmentation-driven, but lacks the explicit recommendation-and-ask close that Storymakers' arc anticipates.",
      "secondary_arcs": [
        {
          "id": 11,
          "slug": "triple-take",
          "beats": [
            {
              "name": "The Facts (What)",
              "end_page": 5,
              "evidence": "Recovery data, recession context, income trajectory",
              "position": 1,
              "start_page": 1
            },
            {
              "name": "The Implications (So What)",
              "end_page": 11,
              "evidence": "Tier divergence and GAFO segment differentiation",
              "position": 2,
              "start_page": 6
            },
            {
              "name": "The Action (Now What)",
              "end_page": 13,
              "evidence": "Forecast + 'retailers must straddle multiple selling strategies'",
              "position": 3,
              "start_page": 12
            }
          ],
          "evidence": "Document moves from facts (recovery data, p.1-5) to implications (tiers/segments diverge, p.6-11) to action (forecast + retailer guidance, p.12-13).",
          "confidence": 62
        }
      ],
      "images_inspected": 6,
      "slide_frameworks": [
        {
          "frameworks": [
            {
              "name": "Three-Tier Household Segmentation (Affluent / Aspirational / Lower-Income)",
              "slug": "three-tier-household-segmentation",
              "evidence": "Chart 6 labels three tiers with income bands and behavioral attributes",
              "confidence": 80
            }
          ],
          "page_number": 6
        }
      ]
    },
    "matchedAt": "2026-04-26 22:12:52+00",
    "slidesSeen": 18,
    "deckSummary": "A text-heavy Bain client newsletter that loosely follows the Consultant's Gambit (context → complication → segmentation frame → segment evidence → forecast); narrative is data-anchored and segmentation-driven, but lacks the explicit recommendation-and-ask close that Storymakers' arc anticipates.",
    "imagesInspected": 6,
    "extractionSeconds": 233.92192
  },
  "score": {
    "backend": "claude",
    "scoredAt": "2026-05-02 06:56:12.364+00",
    "subScores": {
      "scqa_arc": 50,
      "action_titles": 35,
      "mece_structure": 65,
      "closing_strength": 40,
      "evidence_quality": 80,
      "clarity_of_thesis": 60,
      "production_quality": 55,
      "visual_storytelling": 70
    },
    "totalScore": 58,
    "coveragePct": 100,
    "explanations": {
      "scqa_arc": "Situation (Slides 2-5) and Complication (recession, flat income, segmented consumers Slides 5-8) are present, but no explicit Question is posed and the Answer is diffused into Slide 12's narrative rather than resolved.",
      "action_titles": "Only 3 of 18 slides carry true action titles (Slides 4, 8, 10); most are descriptive labels — e.g. Slide 3 'Seasonally adjusted GAFO sales, 2007-2010' is a topic, not an insight.",
      "mece_structure": "Sections walk macro to consumer segments to retail segments to forecast, which is logical, but consumer segmentation (Slides 6-8) and retail segmentation (Slides 9-11) overlap thematically without an explicit bridging framework.",
      "closing_strength": "Slide 13 ends on a forecast benchmark and publication schedule rather than a recommendation; Slide 12's 'Here's to a happy holiday season!' is a sign-off, not next steps.",
      "evidence_quality": "Claims are well-supported with quantitative data (43 data points on Slide 2, 128 on Slide 5, 33 on Slide 11), three appendix slides of sources, and named third-party benchmarks on Slide 13.",
      "clarity_of_thesis": "Thesis (3% GAFO growth, recovery underway but uneven) is implied on Slide 1's cover blurb and Slide 4's action title, but never stated declaratively up front.",
      "production_quality": "Action-title density is low (~17%), three slides flagged 'overcrowded' (6, 10, 11), footnote/citation discipline is solid (Slides 14-18) — newsletter-style polish but inconsistent slide rigor.",
      "visual_storytelling": "Strong chart selection — long-run bars (Slide 2), segmentation table (Slide 6), benchmark bars (Slide 13) — but Slides 4 and 12 are text-heavy walls that miss the chance for a callout or framework."
    },
    "slidesAnalyzed": 18
  },
  "review": {
    "backend": null,
    "verdict": "A competent Bain analytical newsletter with a strong bifurcated-consumer thesis buried in chart-titled slides and no recommendation — use its callouts and p.4/p.8 titles as teaching examples, not its structure.",
    "reviewedAt": "2026-04-24 14:33:15+00",
    "slidesSeen": 18,
    "suggestions": [
      "Rewrite data-chart titles as action titles that state the takeaway (e.g. replace p.5 «Real per capita US disposable personal income, 2000-2010» with «Disposable income has flattened for a decade — pressuring mass retail»).",
      "Add a thesis slide at p.2 leading with the answer: a one-line SCQA summary of what the bifurcated consumer means for holiday 2010, then let the charts prove it.",
      "Replace the soft close at p.12–13 with an explicit 'Implications for retailers' slide listing 3–4 MECE actions (target affluent tier, de-risk midtier assortment, lean into online, etc.) before dropping into the appendix."
    ],
    "closingScore": 45,
    "openingScore": 55,
    "topStrengths": [
      "p.4 and p.8 titles pose a provocation / state a clear finding — good action-title exemplars",
      "Callout sentences throughout (e.g. p.5 «Disposable income growth… has completely flattened», p.8 «one size doesn't fit all») carry a consistent thesis about a bifurcated consumer",
      "Logical macro→micro flow from national sales to household tiers to GAFO segments"
    ],
    "topWeaknesses": [
      "Chart-titled slides (p.2, p.3, p.5, p.7, p.9, p.10, p.11, p.13) read as topic labels with date ranges rather than insights",
      "No explicit recommendation or implications slide before the appendix — the deck ends on a forecast and a toast (p.12–13)",
      "Opening 3 slides bury the thesis behind time-series charts instead of leading with the answer",
      "No MECE section dividers; pillars (macro, consumer, segments, forecast) are implicit only"
    ],
    "narrativeScore": 58,
    "pillarCritique": "There are no real MECE section dividers; the only divider is p.14 «Appendix». The body topics (macro → income → tiers → segments → forecast) form an implicit structure but it isn't signposted, so it reads as a topic sequence rather than a pillared argument.",
    "closingCritique": "The pre-appendix close is soft: p.12 «Here's to a happy holiday season!» is a toast, not a call to action, and p.13 is a forecast benchmark rather than a recommendation. No next-steps or implications-for-retailers slide — it peters into an appendix and sources dump (pp.14–18).",
    "openingCritique": "The cover callout «It's going to be a good season . . . at least compared to the last few» is a pleasingly ambivalent hook, but slides 2–3 drop straight into GAFO time-series without stating the thesis; the reader has to wait until p.4 «The recession may be over, but where's the bounce-back?» to feel the tension. Leads with charts, not with the answer.",
    "extractionSeconds": 52.43299,
    "narrativeCritique": "The deck follows a loose Situation→Complication→Analysis arc (recession backdrop → tiered-consumer complication → segment analysis → holiday forecast) but the Resolution is thin: p.12 'Here's to a happy holiday season!' and p.13's forecast stand in for a recommendation, with no explicit 'so what' for retailers. It reads more as an analytical newsletter than a Storymakers-style persuasive arc.",
    "titleQualityScore": 50,
    "titleQualityCritique": "About a third of titles carry an insight (p.4 «The recession may be over, but where's the bounce-back?», p.6 «Three distinct US household tiers», p.8 «Some GAFO segments are on firmer footing than others»), but most are topic labels with date ranges (p.2 «Holiday sales growth, 1968-2010», p.5 «Real per capita US disposable personal income, 2000-2010», p.9 «GAFO sales growth by segment…»). The callout sentences do the narrative work the titles should."
  },
  "activistThesis": null,
  "pitchdeck": {
    "metadata": null,
    "profile": null
  },
  "slides": [
    {
      "page": 1,
      "type": "setup",
      "title": "Newsletter format, includes references to charts not present on this page.",
      "function": "summarize",
      "imagePath": "https://imgproxy.kitesheet.com/2DLAhx4sjw2V7IDsfLbfo_N1WISABC6V7UizXFc-FNI/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9hNDc4OGZkZDliMTZkNmZhL3AwMDEuanBn",
      "rawType": "executive_summary",
      "block": null,
      "metadata": {
        "slideType": "executive_summary",
        "slideTypeCanon": {
          "name": "Executive summary",
          "slug": "executive_summary",
          "status": "active",
          "canonId": "019de52d-06be-73ff-81b3-f99fe7f0025e",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 78,
        "componentCount": 8,
        "textChars": 1049,
        "nDataPoints": 6,
        "notes": "Newsletter format, includes references to charts not present on this page.",
        "elementsJson": [
          "headline_text",
          "photo",
          "paragraph",
          "bullet_list",
          "footnote"
        ],
        "confidence": 0.95,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:20.25+00",
          "seconds": 3.607,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/1",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-1",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "It's going to be a good season . . . at least compared to the last few",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:27+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba61-5ecaad2f8fb8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.7,
            "x": 0.15,
            "y": 0.78
          },
          "kind": "list",
          "text": "Inventories are above 2009 levels. Retail inventories were below 2009 levels through June, but were 1.2% higher in July and 3.2% higher in August. Still, absolute inventories in August were 7% below the same month in 2008.",
          "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 19:38:20.25+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0c4e70fd-bee0-4245-a7cd-fc139f0f30b3",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "GAFO sales growth: 3%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:27+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba61-62c3784a42dd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.7,
            "x": 0.15,
            "y": 0.28
          },
          "kind": "paragraph",
          "text": "With cautious optimism, Bain is forecasting GAFO sales growth of 3% for the holidays. Although signals are mixed, we are heading into the season with relatively strong momentum versus last year.",
          "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 19:38:20.25+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "31c6a4ad-6027-42ee-b4d1-9c556fa3d23f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.7,
            "x": 0.15,
            "y": 0.58
          },
          "kind": "paragraph",
          "text": "Bain is forecasting holiday GAFO sales growth of 3% for the November-December period, a marked improvement over last year's lackluster holiday performance and slightly above the 10-year average growth.",
          "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 19:38:20.25+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4a8652c9-ed73-4784-bced-819c08cbb217",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.7,
            "x": 0.15,
            "y": 0.88
          },
          "kind": "source-note",
          "text": "1 See Chart A in the Appendix for definitions of GAFO and other sales measures. 2 In January 2010, advance Census Bureau figures pointed to holiday sales growth in 2009 of 1.2%. As more data became available, growth was restated at -0.1%.",
          "attrs": {
            "numbered": true
          },
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.25+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "df35082e-9968-42e9-b8f5-9bef4a99efd2",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.7,
            "x": 0.15,
            "y": 0.54
          },
          "kind": "title",
          "text": "It's going to be a good season . . . at least compared to the last few",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.25+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a7b7c809-43c6-4970-a4d8-5bf55bc5626d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.3,
            "x": 0.05,
            "y": 0.05
          },
          "kind": "title",
          "text": "Bain Retail Holiday Newsletter #1",
          "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 19:38:20.25+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "24060ec2-6c10-4937-9ea3-6aaf219dd44d",
          "parentComponentId": null
        }
      ],
      "metrics": [
        {
          "metricRaw": "GAFO sales growth",
          "numberRaw": "3%",
          "numberKind": "percent",
          "actionTitle": null,
          "calloutText": "It's going to be a good season . . . at least compared to the last few",
          "numberScale": null,
          "numberValue": 3,
          "metricFamily": "growth_rate",
          "numberCurrency": null
        }
      ],
      "tools": [
        {
          "tool": {
            "name": "Big Idea Formula",
            "slug": "big-idea-formula",
            "status": "active",
            "bestFor": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
            "canonId": "019dd956-7dd1-74d7-9866-ffdef19ecfbf",
            "version": 1,
            "bodyDocId": "c30d7484-69e0-4e21-82cf-20fa0966869e",
            "description": "Nancy Duarte's articulation of how to frame a presentation's central message: the speaker's unique point of view plus what's at stake for the audience, expressed as one complete declarative sentence. The narrative-driven counterpart to Minto's analytical governing thought.",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-173f-7139-aafd-a62ac5717fed",
          "evidence": "Top-of-document POV + stakes ('cautious optimism, 3% growth')",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "whyItWorks": "Solves the topic-not-thesis trap and the stake-less recommendation trap simultaneously. A single declarative sentence with a verb forces the speaker's stance into the room; routing the consequence through the word 'you' translates internal urgency into the audience's currency. The result is short enough to be repeated after the meeting — and that repetition is the persuasion mechanism.",
          "antipattern": "A topic dressed as a thesis ('Sustainability Roadmap 2026'), a stake attached to the speaker rather than the audience, two ideas spliced with 'and', abstract verbs (leverage / unlock / empower) that survive deletion, or writing the Big Idea after the deck is already built so the slides don't actually defend it.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to commit to a single declarative thesis before slide one — a sentence that names the speaker's stance and routes a consequence through the audience's currency. Acts as the filter every slide, anecdote, and chart must ladder up to."
        },
        {
          "tool": {
            "name": "SCQA Framework",
            "slug": "scqa-framework",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-7bcb-763f-bdf6-1dfedf3bd36c",
            "version": 1,
            "bodyDocId": "019df22a-a0b0-719e-937e-2ac31e53d32c",
            "description": "Situation, Complication, Question, Answer - structured problem framing",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Architect",
          "layer": "block",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-173f-7139-aafd-ab2b20a2976e",
          "evidence": "Intro letter sequences situation, complication ('signals are mixed'), and answer (3% forecast)",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Storytelling Effect",
            "slug": "storytelling-effect",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-981b-74f9-9096-5c8df03dab5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Stories are remembered up to 22x better than facts alone",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-173f-7139-aafd-ae6c5aed53eb",
          "evidence": "Memo opens with To/From and human image strip rather than bullet list",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 55,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-173f-7139-aafd-9f9679e27a03",
          "evidence": "Headline 'It's going to be a good season... at least compared to the last few' states the insight",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 90,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Core Message Extraction",
            "slug": "core-message-extraction",
            "status": "active",
            "bestFor": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
            "canonId": "019dd956-bc71-707d-8867-1b2e810175cf",
            "version": 1,
            "bodyDocId": "f85613cb-4b77-462f-bfe6-3b862516e1a6",
            "description": "The discipline of distilling raw analysis, data, or content into a single declarative sentence — the slide's core message — that the audience would walk away with if they remembered nothing else. Process, not artefact: extraction questions run on the raw content until one sentence falls out.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-173f-7139-aafd-a1322fb7cb83",
          "evidence": "Opening paragraph crystallizes thesis: 'forecasting GAFO sales growth of 3%'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
          "confidence": 82,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "whyItWorks": "Solves the two failure modes of slide writing simultaneously: the topic title (which outsources interpretation to the audience and produces three different conclusions in three different heads) and the multi-thesis stapler (which exceeds working memory and gets remembered as fragments). Aligns with how readers actually consume decks — Heath & Heath's Find the Core, the journalist's nut graf, and Minto's governing thought all converge on the same cognitive economics.",
          "antipattern": "Topic titles disguised as core messages (Customer satisfaction, no verb, no stake); multi-thesis sentences stapled with and; hedged sentences (may show signs of possible softening); chart-caption titles (Revenue fell 4%) that restate what the chart already shows instead of naming the so-what; meta-commentary (this slide explores...) that describes the slide rather than concluding it.",
          "cardinality": null,
          "narrativePurpose": "Forces the slide author to do the interpretive work before the slide ships, so the audience does not have to do it during the meeting. Wins the WYSIATI battle on purpose — the loudest fragment on the page becomes the author's chosen sentence rather than whichever chart label happens to be largest."
        },
        {
          "tool": {
            "name": "Executive summary",
            "slug": "executive-summary",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4b63-72d5-9734-da757d91ca61",
            "version": 1,
            "bodyDocId": null,
            "description": "A condensed view of the entire argument on a single slide / block.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "8261f84a-d152-4b6e-9767-b9e8af07c333",
          "evidence": "Bain is forecasting holiday GAFO sales growth of 3% for the November-December period",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-17 03:15:22.625342+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 3,
          "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": "019dd95a-07a5-761b-9144-341fd0a6179b",
          "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
          "beatType": {
            "name": "Situation & Context",
            "slug": "consultants-gambit-situation-context",
            "status": "active",
            "canonId": "019dd9b8-05ae-741b-992d-65ee83c639b3",
            "version": 1,
            "description": null
          },
          "evidence": "Cover letter + holiday sales history + GAFO sales context",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 5,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a5-761b-9144-4b7cd6537801",
          "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Recovery data, recession context, income trajectory",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 62
        }
      ],
      "loops": [],
      "thumbSrc": "https://imgproxy.kitesheet.com/0SxNeUUgLpff9fz9t-JDlsQunS-L-B0za02oK82lhAo/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9hNDc4OGZkZDliMTZkNmZhL3AwMDEuanBn",
      "imagePathAlt": "https://imgproxy.kitesheet.com/LkBCR6GN9lu6oLSC2jkpSCMDKOfdoeEbtPQqQDKBDec/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9hNDc4OGZkZDliMTZkNmZhL3AwMDEucG5n",
      "thumbSrcAlt": "https://imgproxy.kitesheet.com/RgKygF1nbbXlXhMpPhNxo2ktT6pfgwuaWlWjEi25nNw/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9hNDc4OGZkZDliMTZkNmZhL3AwMDEucG5n"
    },
    {
      "page": 2,
      "type": "analysis",
      "title": "Includes recession markers and historical averages for holiday sales; highlights recent recovery in GAFO growth.",
      "function": "analyze_data",
      "rawType": "appendix_data",
      "block": null,
      "metadata": {
        "slideType": "appendix_data",
        "slideTypeCanon": {
          "name": "Appendix data",
          "slug": "appendix_data",
          "status": "active",
          "canonId": "019de52d-078a-745b-9ee4-c15f2f539acd",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 53,
        "componentCount": 7,
        "textChars": 319,
        "nDataPoints": 45,
        "notes": "Includes recession markers and historical averages for holiday sales; highlights recent recovery in GAFO growth.",
        "elementsJson": [
          "bar_chart_vertical",
          "line_chart",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:19.285+00",
          "seconds": 2.629,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/2",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-2",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Monthly year-over-year growth positive every month since February",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:28+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba61-b221d4c127ce",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.7,
            "x": 0.14,
            "y": 0.17
          },
          "kind": "chart",
          "text": "Holiday sales growth bar chart",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:19.285+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d5957c92-81b8-425c-9202-ac37ff2a41be",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.7,
            "x": 0.14,
            "y": 0.56
          },
          "kind": "chart",
          "text": "GAFO growth line chart",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:19.285+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "91c1e793-388a-4d72-8ba1-80fcfc4f4d9e",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Holiday sales growth: 2.3%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:28+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba61-b547209727f5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.3,
            "x": 0.14,
            "y": 0.435
          },
          "kind": "source-note",
          "text": "Source: US Census Bureau; Bain analysis",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:19.285+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a5bccea1-91be-49ca-a095-2a77fd7b5e38",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.3,
            "x": 0.14,
            "y": 0.095
          },
          "kind": "title",
          "text": "Chart 1: Holiday sales growth, 1968-2010",
          "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 19:38:19.285+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0dbba8f8-957f-41de-a13f-fd23b4fdc54e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.7,
            "x": 0.14,
            "y": 0.495
          },
          "kind": "title",
          "text": "Chart 2: GAFO year-over-year growth rates, 3-month rolling average, September 2007-September 2010",
          "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 19:38:19.285+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8e8769e7-7018-4153-a1a8-9d47463fc343",
          "parentComponentId": null
        }
      ],
      "metrics": [
        {
          "metricRaw": "Holiday sales growth",
          "numberRaw": "2.3%",
          "numberKind": "percent",
          "actionTitle": null,
          "calloutText": "Monthly year-over-year growth positive every month since February",
          "numberScale": null,
          "numberValue": 2.3,
          "metricFamily": "growth_rate",
          "numberCurrency": null
        }
      ],
      "tools": [
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafd-b63d908df3c5",
          "evidence": "30/20/10-year average reference lines annotated; 'positive every month since February' bracket",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafd-b24ed5a417fb",
          "evidence": "Bar chart for 1968-2010 holiday growth + line chart for YoY rolling average",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Small Multiples",
            "slug": "small-multiples",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
            "version": 1,
            "bodyDocId": null,
            "description": "Repeating similar charts for comparison across categories or time",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafd-bf1d68957f52",
          "evidence": "Two stacked time-series charts on the same horizontal scale",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 60,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Von Restorff Effect",
            "slug": "von-restorff-effect",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-beab-73d8-9f62-30d0332e926e",
            "version": 1,
            "bodyDocId": null,
            "description": "Items that stand out are noticed and remembered - make key points visually distinct",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafd-bb93787670d4",
          "evidence": "2010F bar shaded yellow against blue history bars",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 3,
          "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": "019dd95a-07a5-761b-9144-341fd0a6179b",
          "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
          "beatType": {
            "name": "Situation & Context",
            "slug": "consultants-gambit-situation-context",
            "status": "active",
            "canonId": "019dd9b8-05ae-741b-992d-65ee83c639b3",
            "version": 1,
            "description": null
          },
          "evidence": "Cover letter + holiday sales history + GAFO sales context",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 5,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a5-761b-9144-4b7cd6537801",
          "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Recovery data, recession context, income trajectory",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 62
        }
      ],
      "loops": [
        {
          "to": 5,
          "from": 2,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-088c-724c-b312-ea04694b5fcd",
          "evidence": "Charts 1-5 layer historical growth, GAFO YoY, seasonally adjusted sales, and disposable income to build the recovery-with-caveat pattern.",
          "position": 1,
          "objective": "Stack multiple data series to argue recovery is real but income-constrained",
          "confidence": 72,
          "extraction": {
            "at": "2026-04-29 13:07:29.689431+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 3,
      "type": "analysis",
      "title": "The slide contains two distinct charts: a line chart for monthly trends and a bar chart for annual totals.",
      "function": "analyze_data",
      "rawType": "data_table",
      "block": null,
      "metadata": {
        "slideType": "data_table",
        "slideTypeCanon": {
          "name": "Data table",
          "slug": "data_table",
          "status": "active",
          "canonId": "019de52d-0bbd-71b9-9918-417f904abbf8",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 70,
        "componentCount": 8,
        "textChars": 569,
        "nDataPoints": 19,
        "notes": "The slide contains two distinct charts: a line chart for monthly trends and a bar chart for annual totals.",
        "elementsJson": [
          "line_chart",
          "bar_chart_vertical",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:19.832+00",
          "seconds": 3.046,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/3",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-3",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.25,
            "w": 0.5,
            "x": 0.25,
            "y": 0.53
          },
          "kind": "chart",
          "text": "Bar chart showing annual GAFO sales from 2006 to 2010.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:19.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a70ad142-141d-4bd6-ba75-a00babd8196e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.55,
            "x": 0.23,
            "y": 0.16
          },
          "kind": "chart",
          "text": "Line chart showing monthly seasonally adjusted GAFO sales from Feb 2007 to Aug 2010.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:19.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "19fae2dd-e1d4-4995-b164-9602154c728c",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "GAFO sales: $1,147B",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:27+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba61-453a3533d96a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.23,
            "y": 0.795
          },
          "kind": "source-note",
          "text": "*Fourth-quarter 2010 GAFO sales have been estimated using Bain's forecast of 3% year-over-year growth. Note: September 2010 office supplies data have been estimated using the August trailing 3-month average growth rate. Source: US Census Bureau; Bain analysis",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:19.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "17b83a39-b651-4380-8f4f-78eb966fbe83",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.01,
            "w": 0.15,
            "x": 0.23,
            "y": 0.4
          },
          "kind": "source-note",
          "text": "Source: US Census Bureau",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:19.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fee7cee9-3b86-4407-b201-25242ee0a0a4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.55,
            "x": 0.23,
            "y": 0.75
          },
          "kind": "table",
          "text": "Year-over-year growth rates for 2006-2010.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Table",
              "slug": "table",
              "status": "active",
              "canonId": "019de52c-f9c8-7148-8119-eaac9594cd28",
              "version": 1,
              "description": "Tabular data layout."
            },
            "tool": null,
            "subkind": {
              "name": "Data table",
              "slug": "data",
              "status": "active",
              "canonId": "019de52d-02d5-75b8-8abf-88e92bf63569",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "data",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:19.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "54d54b25-0f40-4285-a2a6-6b5f3cb3136d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.5,
            "x": 0.14,
            "y": 0.095
          },
          "kind": "title",
          "text": "Chart 3: Seasonally adjusted GAFO sales, 2007-2010",
          "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 19:38:19.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "98d34b3c-70ad-444e-a250-7d67f50e5022",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.4,
            "x": 0.14,
            "y": 0.47
          },
          "kind": "title",
          "text": "Chart 4: Annual GAFO sales, 2006-2010",
          "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 19:38:19.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d1cf621e-c3c0-4859-b025-6eb44d37b00f",
          "parentComponentId": null
        }
      ],
      "metrics": [
        {
          "metricRaw": "GAFO sales",
          "numberRaw": "$1,147B",
          "numberKind": "money",
          "actionTitle": null,
          "calloutText": null,
          "numberScale": "b",
          "numberValue": 1.147,
          "metricFamily": "revenue",
          "numberCurrency": "$"
        }
      ],
      "tools": [
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafd-c1c583d27f0a",
          "evidence": "Seasonally adjusted GAFO sales line chart",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Data-Ink Ratio",
            "slug": "data-ink-ratio",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-afc8-70da-b378-92834d36fde6",
            "version": 1,
            "bodyDocId": null,
            "description": "Maximize data, minimize non-data ink - remove chartjunk and decoration",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafd-c4b3dfc067dc",
          "evidence": "Sparse single-line chart, minimal decoration",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 60,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 3,
          "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": "019dd95a-07a5-761b-9144-341fd0a6179b",
          "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
          "beatType": {
            "name": "Situation & Context",
            "slug": "consultants-gambit-situation-context",
            "status": "active",
            "canonId": "019dd9b8-05ae-741b-992d-65ee83c639b3",
            "version": 1,
            "description": null
          },
          "evidence": "Cover letter + holiday sales history + GAFO sales context",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 5,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a5-761b-9144-4b7cd6537801",
          "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Recovery data, recession context, income trajectory",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 62
        }
      ],
      "loops": [
        {
          "to": 5,
          "from": 2,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-088c-724c-b312-ea04694b5fcd",
          "evidence": "Charts 1-5 layer historical growth, GAFO YoY, seasonally adjusted sales, and disposable income to build the recovery-with-caveat pattern.",
          "position": 1,
          "objective": "Stack multiple data series to argue recovery is real but income-constrained",
          "confidence": 72,
          "extraction": {
            "at": "2026-04-29 13:07:29.689431+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 4,
      "type": "setup",
      "title": "This appears to be a page from a Bain & Company newsletter.",
      "function": "summarize",
      "rawType": "executive_summary",
      "block": null,
      "metadata": {
        "slideType": "executive_summary",
        "slideTypeCanon": {
          "name": "Executive summary",
          "slug": "executive_summary",
          "status": "active",
          "canonId": "019de52d-06be-73ff-81b3-f99fe7f0025e",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 94,
        "componentCount": 10,
        "textChars": 3187,
        "nDataPoints": 16,
        "notes": "This appears to be a page from a Bain & Company newsletter.",
        "elementsJson": [
          "bullet_list",
          "paragraph",
          "footnote"
        ],
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:21.012+00",
          "seconds": 4.222,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/4",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-4",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Online sales continue to be a bright spot for retailers and are rapidly increasing in importance.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:28+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba62-d86bb848126b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.07,
            "w": 0.6,
            "x": 0.2,
            "y": 0.25
          },
          "kind": "list",
          "text": "Store productivity is well above 2007 levels. Average store productivity, measured by sales per square foot, is the silver lining of store closures. It is up 7.9% from 2007 to 2010, a function of the sharp drop (8.1%) in retail selling space over the period, which buffered declining sales.",
          "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 19:38:21.012+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "21479763-8526-4803-9a58-59bdd1f926e3",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.6,
            "x": 0.2,
            "y": 0.16
          },
          "kind": "list",
          "text": "Holiday hiring will be up. Outsourcing firm Challenger, Gray & Christmas expects holiday hiring to go up 10% to 30% over 2009, an increase of 550,000 to 650,000 jobs. But these figures will still lag the estimated 720,000 jobs added in 2007 by 10% to 25%. Total retail employment also remains 7% below its 2007 peak.",
          "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 19:38:21.012+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cce4843b-ff79-4d9f-82a3-7133d3377ca7",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "GDP growth: 3.7%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:28+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba62-df98d2495497",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.7,
            "x": 0.15,
            "y": 0.62
          },
          "kind": "paragraph",
          "text": "Although the recession officially ended 16 months ago, it's clear that the recovery is going to be long and bumpy. After falling 2.6% in 2009, GDP increased 3.7% in the first quarter of 2010 and 1.7% in the second quarter. But those increases were funded largely by government spending, which went up 5% and 12.8% in the same quarters.",
          "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 19:38:21.012+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0da6becb-15b1-4323-9cdc-982fd68f4927",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.6,
            "x": 0.2,
            "y": 0.11
          },
          "kind": "paragraph",
          "text": "inventory data are not yet available, retail container traffic continued to trend well above last year in September and is forecast to do the same in October.",
          "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 19:38:21.012+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "545606cc-fb03-4436-b6f9-2ee6c0bf13dd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.7,
            "x": 0.15,
            "y": 0.33
          },
          "kind": "paragraph",
          "text": "Online sales continue to be a bright spot for retailers and are rapidly increasing in importance. E-commerce sales increased at a healthy 10% through the first two quarters of 2010, and Forrester expects them to continue to grow at the same rate through 2013. E-commerce penetration has almost doubled—from 4% in 2004 to 7% year-to-date in 2010—according to comScore. But these are just averages; some traditional retailers are driving 15% or more of their business through digital channels. The most innovative retailers are looking beyond traditional multichannel tactics to what we call an omni-channel approach. This means that all channels need to work in concert to provide a seamless, cohesive and integrated customer experience, one that grows both digital and brick-and-mortar sales. It also means offering solutions to meet consumers' needs through their websites, mobile platforms, links to social media pages, gaming options, and in-store technology. We will cover this topic in more depth in our third newsletter, after third-quarter e-commerce results are released.",
          "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 19:38:21.012+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7bef2c03-0fdd-44c6-8402-686efe30feb2",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.07,
            "w": 0.7,
            "x": 0.15,
            "y": 0.69
          },
          "kind": "paragraph",
          "text": "Some economic indicators are showing improvement. Equity markets have risen almost 75% from their recession low in May 2009, down only about 25% from their all-time high in October 2007. Federal Reserve data indicate that the average consumer credit interest rate has eased to 14.2%, its lowest level in the last eight quarters. And decreases in mortgage rates may expand consumers' spending capacity, if they are able to refinance.",
          "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 19:38:21.012+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e4b26515-eeec-462b-9638-f7ce45c5ff19",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.7,
            "x": 0.15,
            "y": 0.78
          },
          "kind": "source-note",
          "text": "3 The Census Bureau reports inventory data with a two-month lag. 4 Based on Euromonitor data for mass merchandisers, department stores, warehouse clubs, clothing and footwear, furniture and furnishings, electronics and appliances, book sellers and stationers, audiovisual stores, toys and sports good stores. 5 Based on nondefense federal government spending. 6 Based on the S&P 500 Index on October 21, 2010.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:21.012+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a1859b69-bf8c-48cd-af9b-63280275b325",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.4,
            "x": 0.15,
            "y": 0.59
          },
          "kind": "title",
          "text": "The recession may be over, but where's the bounce-back?",
          "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 19:38:21.012+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6a97311d-0618-4ba5-bd89-50b45b13bc52",
          "parentComponentId": null
        }
      ],
      "metrics": [
        {
          "metricRaw": "GDP growth",
          "numberRaw": "3.7%",
          "numberKind": "percent",
          "actionTitle": "The recession may be over, but where's the bounce-back?",
          "calloutText": "Online sales continue to be a bright spot for retailers and are rapidly increasing in importance.",
          "numberScale": null,
          "numberValue": 3.7,
          "metricFamily": "growth_rate",
          "numberCurrency": null
        }
      ],
      "tools": [
        {
          "tool": {
            "name": "Curiosity Gap",
            "slug": "curiosity-gap",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9703-74ef-8b85-96dfd8525025",
            "version": 1,
            "bodyDocId": null,
            "description": "People seek missing information - create open questions that demand resolution",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-173f-7139-aafd-d05da8363f9c",
          "evidence": "Question headline opens an info gap the section then closes",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 4,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-173f-7139-aafd-ca4f14e5733b",
          "evidence": "Section header 'The recession may be over, but where's the bounce-back?'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 88,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 4,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-173f-7139-aafd-ce2af118f246",
          "evidence": "'550,000 to 650,000 jobs', '7.9% productivity', specific named sources",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 4,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Executive summary",
            "slug": "executive-summary",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4b63-72d5-9734-da757d91ca61",
            "version": 1,
            "bodyDocId": null,
            "description": "A condensed view of the entire argument on a single slide / block.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "f97d8358-b791-4f5e-825b-b6a504b18e99",
          "evidence": "Although the recession officially ended 16 months ago, it's clear that the recovery is going to be long and bumpy.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-17 03:15:22.789524+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 4,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 5,
          "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": 4,
          "name": "Problem & Complication",
          "beatId": "019dd95a-07a5-761b-9144-38cbd802e014",
          "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
          "beatType": {
            "name": "Problem & Complication",
            "slug": "consultants-gambit-problem-complication",
            "status": "active",
            "canonId": "019dd9b8-064a-777f-a374-e9a8c43dedd4",
            "version": 1,
            "description": null
          },
          "evidence": "'Where's the bounce-back?' + flat disposable income",
          "position": 2,
          "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": 78
        },
        {
          "to": 5,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a5-761b-9144-4b7cd6537801",
          "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Recovery data, recession context, income trajectory",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 62
        }
      ],
      "loops": [
        {
          "to": 5,
          "from": 2,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-088c-724c-b312-ea04694b5fcd",
          "evidence": "Charts 1-5 layer historical growth, GAFO YoY, seasonally adjusted sales, and disposable income to build the recovery-with-caveat pattern.",
          "position": 1,
          "objective": "Stack multiple data series to argue recovery is real but income-constrained",
          "confidence": 72,
          "extraction": {
            "at": "2026-04-29 13:07:29.689431+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 5,
      "type": "analysis",
      "title": "Includes a chart showing income stagnation and text describing economic indicators and a consumer segmentation approach.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 78,
        "componentCount": 8,
        "textChars": 1017,
        "nDataPoints": 6,
        "notes": "Includes a chart showing income stagnation and text describing economic indicators and a consumer segmentation approach.",
        "elementsJson": [
          "line_chart",
          "paragraph",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:19.832+00",
          "seconds": 2.821,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/5",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-5",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Disposable income growth, which historically has been at about 2%, has completely flattened.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:28+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba62-8aac5ae95713",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.22,
            "w": 0.54,
            "x": 0.23,
            "y": 0.18
          },
          "kind": "chart",
          "text": "Line chart showing real per capita disposable income from 2000 to 2010 with CAGR annotations.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:19.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8b1a6a5b-baa6-4433-979f-132315e0b025",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Real per capita disposable personal income: -0.3% CAGR",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:28+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba62-8dba40bbc7aa",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.72,
            "x": 0.14,
            "y": 0.59
          },
          "kind": "paragraph",
          "text": "A tale of three households. High-level indicators based on household averages are interesting but may be misleading. The Bain Macro Trends Group has identified three tiers of households: the affluent, the aspirational, and the lower income.",
          "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 19:38:19.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b9e742eb-1b26-4ed9-8f91-b440c817f1df",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.72,
            "x": 0.14,
            "y": 0.45
          },
          "kind": "paragraph",
          "text": "Several other economic indicators have not improved but have remained stable. Unemployment continues at 9.6%, near its highest level since the early 1980s. We estimate that “fully loaded unemployment” is as high as 18%.",
          "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 19:38:19.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f066aedc-0b0a-4c67-96b3-18582f82d9ba",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.4,
            "x": 0.23,
            "y": 0.4
          },
          "kind": "source-note",
          "text": "Note: All figures are in 2005 dollars; CAGR is the compounded annual growth rate. Source: Bureau of Economic Analysis",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:19.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "099abb3f-4c52-43d2-b590-ed2aace50304",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.72,
            "x": 0.14,
            "y": 0.84
          },
          "kind": "source-note",
          "text": "7 A Communispace community is a private online site where up to 400 invited prospects and customers regularly spend time brainstorming...",
          "attrs": {
            "numbered": true
          },
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:19.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9bbb9d35-b66a-4091-a086-1b7aad81e93f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.72,
            "x": 0.14,
            "y": 0.09
          },
          "kind": "title",
          "text": "Chart 5: Real per capita US disposable personal income, 2000-2010",
          "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 19:38:19.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8cd5252d-e4e4-4ab0-a381-1d9875f3cd22",
          "parentComponentId": null
        }
      ],
      "metrics": [
        {
          "metricRaw": "Real per capita disposable personal income",
          "numberRaw": "-0.3% CAGR",
          "numberKind": "percent",
          "actionTitle": null,
          "calloutText": "Disposable income growth, which historically has been at about 2%, has completely flattened.",
          "numberScale": null,
          "numberValue": -0.3,
          "metricFamily": "other",
          "numberCurrency": null
        }
      ],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-173f-7139-aafd-d4de40dac353",
          "evidence": "Callout 'Disposable income growth... has completely flattened' is the so-what",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafd-dc6a2dab4489",
          "evidence": "CAGR figure called out on the chart",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chartjunk Elimination",
            "slug": "chartjunk-elimination",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
            "version": 1,
            "bodyDocId": null,
            "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "7603638f-60aa-44ac-9201-c8818f303595",
          "evidence": "Line chart showing real per capita disposable income from 2000 to 2010 with CAGR annotations.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-17 03:52:35.395331+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Contrast Principle",
            "slug": "contrast-principle",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bf0f-73ae-b9df-e60508cdaa65",
            "version": 1,
            "bodyDocId": null,
            "description": "Higher visual weight draws attention - use contrast strategically for emphasis",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafd-d9d7861b415f",
          "evidence": "Contrasts historical 2% trajectory with -0.3% CAGR flatline",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "8ac5244e-1529-4504-a18a-55864fef88c3",
          "evidence": "Identified three tiers of households: the affluent, the aspirational, and the lower income.",
          "framework": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-05-02 19:38:19.832+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "frameworkName": "market-segmentation-pyramid"
        }
      ],
      "arcBeats": [
        {
          "to": 5,
          "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": 4,
          "name": "Problem & Complication",
          "beatId": "019dd95a-07a5-761b-9144-38cbd802e014",
          "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
          "beatType": {
            "name": "Problem & Complication",
            "slug": "consultants-gambit-problem-complication",
            "status": "active",
            "canonId": "019dd9b8-064a-777f-a374-e9a8c43dedd4",
            "version": 1,
            "description": null
          },
          "evidence": "'Where's the bounce-back?' + flat disposable income",
          "position": 2,
          "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": 78
        },
        {
          "to": 5,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "The Facts (What)",
          "beatId": "019dd95a-07a5-761b-9144-4b7cd6537801",
          "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
          "beatType": {
            "name": "The Facts (What)",
            "slug": "triple-take-the-facts-what",
            "status": "active",
            "canonId": "019dd9b8-092b-754c-8eaa-ede3ffdcb060",
            "version": 1,
            "description": null
          },
          "evidence": "Recovery data, recession context, income trajectory",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Setup",
            "slug": "setup",
            "status": "active",
            "canonId": "019dd9b8-020e-7505-af9b-d9b9a4679bcc",
            "version": 1,
            "description": "Where the deck grounds the reader before doing anything else. Almost every arc opens here."
          },
          "alignedBlockIds": null,
          "matchConfidence": 62
        }
      ],
      "loops": [
        {
          "to": 5,
          "from": 2,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-088c-724c-b312-ea04694b5fcd",
          "evidence": "Charts 1-5 layer historical growth, GAFO YoY, seasonally adjusted sales, and disposable income to build the recovery-with-caveat pattern.",
          "position": 1,
          "objective": "Stack multiple data series to argue recovery is real but income-constrained",
          "confidence": 72,
          "extraction": {
            "at": "2026-04-29 13:07:29.689431+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 6,
      "type": "setup",
      "title": "The slide includes a specific case study example of 'The Greens' to illustrate the Affluent segment.",
      "function": "decompose_segments",
      "rawType": "segmentation",
      "block": null,
      "metadata": {
        "slideType": "segmentation",
        "slideTypeCanon": {
          "name": "Segmentation",
          "slug": "segmentation",
          "status": "active",
          "canonId": "019de52d-0917-75d5-9172-1b3b3c2f6400",
          "version": 1,
          "description": null
        },
        "function": "decompose_segments",
        "functionCanon": {
          "name": "Decompose segments",
          "slug": "decompose_segments",
          "status": "active",
          "canonId": "019de52d-14f1-74f8-be75-beb0be1135ec",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 73,
        "componentCount": 8,
        "textChars": 693,
        "nDataPoints": 15,
        "notes": "The slide includes a specific case study example of 'The Greens' to illustrate the Affluent segment.",
        "elementsJson": [
          "comparison_table",
          "paragraph",
          "photo",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:20.005+00",
          "seconds": 2.946,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/6",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-6",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "They are in the only tier of the population that is actually increasing its consumption: In the last four years, their share of total consumption rose 5 percentage points.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:28+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba62-09db58ce1dd5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.15,
            "x": 0.15,
            "y": 0.52
          },
          "kind": "image",
          "text": "Photo of a luxury house at night",
          "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 19:38:20.005+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3d6fa270-d313-4c40-90d6-cfd62808e116",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Consumption share: 38%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:28+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba62-0ce6ed2e214d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.47,
            "x": 0.32,
            "y": 0.52
          },
          "kind": "paragraph",
          "text": "The Greens are an affluent household, earning an income of more than $100,000 a year. After a few years of holding back, the Greens are looking forward to spending again during the holiday season.",
          "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 19:38:20.005+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a2480751-d0ae-4a84-9a1a-9c4c9246723a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.4,
            "x": 0.15,
            "y": 0.89
          },
          "kind": "source-note",
          "text": "8 Again, this measure excludes the underemployed and the discouraged.",
          "attrs": {
            "numbered": true
          },
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.005+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "70c01aa9-8d93-4871-9c3f-6cec1271405f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.01,
            "w": 0.2,
            "x": 0.21,
            "y": 0.46
          },
          "kind": "source-note",
          "text": "Note: The growth rates for 2010 are estimates",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.005+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7326fb47-42a2-4a7d-9d79-6e38e35c77e5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.58,
            "x": 0.21,
            "y": 0.155
          },
          "kind": "table",
          "text": "Comparison matrix of Affluent, Aspirational, and Lower Income tiers across Income, Population, Consumption, Jobs, and Assets.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Table",
              "slug": "table",
              "status": "active",
              "canonId": "019de52c-f9c8-7148-8119-eaac9594cd28",
              "version": 1,
              "description": "Tabular data layout."
            },
            "tool": null,
            "subkind": {
              "name": "Data table",
              "slug": "data",
              "status": "active",
              "canonId": "019de52d-02d5-75b8-8abf-88e92bf63569",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "data",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.005+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2f39595d-bb92-400f-a58a-e5c6af51d844",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.34,
            "x": 0.33,
            "y": 0.12
          },
          "kind": "title",
          "text": "Three distinct US household tiers",
          "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 19:38:20.005+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "212ba026-8e39-42a2-95ca-02f8fb8aba2d",
          "parentComponentId": null
        }
      ],
      "metrics": [
        {
          "metricRaw": "Consumption share",
          "numberRaw": "38%",
          "numberKind": "percent",
          "actionTitle": null,
          "calloutText": "They are in the only tier of the population that is actually increasing its consumption: In the last four years, their share of total consumption rose 5 percentage points.",
          "numberScale": null,
          "numberValue": 38,
          "metricFamily": "share_penetration",
          "numberCurrency": null
        }
      ],
      "tools": [
        {
          "tool": {
            "name": "The Rule of Three",
            "slug": "the-rule-of-three",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-8962-75cf-b4f8-9394501a6f33",
            "version": 1,
            "bodyDocId": null,
            "description": "Ideas presented in threes are more memorable and satisfying",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-173f-7139-aafd-f61cd044c9c5",
          "evidence": "Three tiers framing chosen over finer segmentation",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Three Pillars",
            "slug": "three-pillars",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-81ef-7455-a365-b234d95a6bbb",
            "version": 1,
            "bodyDocId": null,
            "description": "Three major supporting arguments that are MECE and address key concerns",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Architect",
          "layer": "block",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-173f-7139-aafd-f0ad95a3f27f",
          "evidence": "Three MECE tiers organize the segmentation argument",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "2x2 matrix",
            "slug": "matrix-2x2",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-50ab-72d1-8afb-3ab0a38e32a8",
            "version": 1,
            "bodyDocId": null,
            "description": "BCG matrix, importance/urgency, any axes-and-quadrants frame.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "86b8b164-514e-4304-a661-0cb34def0548",
          "evidence": "Comparison matrix of Affluent, Aspirational, and Lower Income tiers across Income, Population, Consumption, Jobs, and Assets.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-17 03:52:35.47995+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-173f-7139-aafd-e1f3b6fe4441",
          "evidence": "Title 'Three distinct US household tiers' states the framework",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 88,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Color Strategy",
            "slug": "color-strategy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
            "version": 1,
            "bodyDocId": null,
            "description": "Using color for emphasis, categories, sentiment, and hierarchy",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafd-e4069909521a",
          "evidence": "Blue/red/grey columns encode Affluent/Aspirational/Lower-Income",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Law of Similarity",
            "slug": "law-of-similarity",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-c025-70d9-a411-8efa41ae179b",
            "version": 1,
            "bodyDocId": null,
            "description": "Similar-looking elements perceived as related - consistent styling for related concepts",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafd-ec2cecbd001d",
          "evidence": "Consistent column styling groups all attributes per tier",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Small Multiples",
            "slug": "small-multiples",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
            "version": 1,
            "bodyDocId": null,
            "description": "Repeating similar charts for comparison across categories or time",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafd-ea5e5c835922",
          "evidence": "Repeating row structure: Income, Population, Consumption, Jobs, Assets",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "7167c1d1-dd20-4d12-a3a1-081f5cc41376",
          "evidence": "The slide explicitly segments the US population into three distinct tiers based on economic characteristics.",
          "framework": null,
          "confidence": 1,
          "extraction": {
            "at": "2026-05-02 19:38:20.005+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "frameworkName": "audience-segmentation"
        },
        {
          "matchId": "019dd95a-1d21-7467-a463-82b5584d24da",
          "evidence": "Chart 6 labels three tiers with income bands and behavioral attributes",
          "framework": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:34.940444+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "frameworkName": "Three-Tier Household Segmentation (Affluent / Aspirational / Lower-Income)"
        }
      ],
      "arcBeats": [
        {
          "to": 8,
          "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": 6,
          "name": "Solution & Approach",
          "beatId": "019dd95a-07a5-761b-9144-3f0d16d2447f",
          "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
          "beatType": {
            "name": "Solution & Approach",
            "slug": "consultants-gambit-solution-approach",
            "status": "active",
            "canonId": "019dd9b8-071c-7161-9184-580fdac7a4f9",
            "version": 1,
            "description": null
          },
          "evidence": "Three-tier household frame + 'one size doesn't fit all' segments",
          "position": 3,
          "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": 78
        },
        {
          "to": 11,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a5-761b-9144-4ec6ce8acdb2",
          "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Tier divergence and GAFO segment differentiation",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 62
        }
      ],
      "loops": [
        {
          "to": 7,
          "from": 6,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019dd95a-088c-724c-b312-eda89a3dbc5d",
          "evidence": "Chart 6 explicitly defines Affluent / Aspirational / Lower-Income tiers; Chart 7 shows employment status differs sharply by tier.",
          "position": 2,
          "objective": "Split the household population into three tiers behaving differently",
          "confidence": 88,
          "extraction": {
            "at": "2026-04-29 13:07:29.689431+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 7,
      "type": "analysis",
      "title": "The chart highlights the disparity in employment status across income levels, with lower-income households experiencing significantly higher rates of unemployme",
      "function": "analyze_data",
      "rawType": "data_table",
      "block": null,
      "metadata": {
        "slideType": "data_table",
        "slideTypeCanon": {
          "name": "Data table",
          "slug": "data_table",
          "status": "active",
          "canonId": "019de52d-0bbd-71b9-9918-417f904abbf8",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 53,
        "componentCount": 6,
        "textChars": 545,
        "nDataPoints": 9,
        "notes": "The chart highlights the disparity in employment status across income levels, with lower-income households experiencing significantly higher rates of unemployment and underemployment.",
        "elementsJson": [
          "bar_chart_stacked",
          "paragraph",
          "footnote"
        ],
        "confidence": 0.95,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:19.577+00",
          "seconds": 2.428,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/7",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-7",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.25,
            "w": 0.5,
            "x": 0.25,
            "y": 0.18
          },
          "kind": "chart",
          "text": "Stacked bar chart showing employment status by income tier",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Stacked bar chart",
              "slug": "bar-stacked",
              "status": "active",
              "canonId": "019de52c-feec-74bf-9028-15b74f84f0a7",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-stacked",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:19.577+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6b18fb9f-c6b8-4b65-a345-5d7983d71cbf",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.15,
            "x": 0.15,
            "y": 0.62
          },
          "kind": "image",
          "text": "Photo of a suburban house",
          "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 19:38:19.577+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7015c126-acc4-4668-98d4-dee5cfe8c6db",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Unemployment rate: 30%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:32+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba65-91de4d255edc",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.7,
            "x": 0.15,
            "y": 0.62
          },
          "kind": "paragraph",
          "text": "The Johnsons are an aspirational household, earning between $50,000 and $100,000 a year. They aspire to the “American Dream” of owning their own home and being comfortable.",
          "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 19:38:19.577+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ac22a5b0-320d-49d5-91be-214a0f546d7e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.5,
            "x": 0.25,
            "y": 0.41
          },
          "kind": "source-note",
          "text": "Note: The official unemployment rate for the fourth quarter of 2009 was 10.0%; bar width represents each segment's share of the population. Source: Center for Labor Market Studies",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:19.577+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "959bfc04-3a0a-4d87-8dcf-07f38045f27a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.2,
            "y": 0.1
          },
          "kind": "title",
          "text": "Estimated employment status of US labor force by household tier (income bracket), Q4 2009",
          "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 19:38:19.577+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "34dafbb6-f798-486d-abd0-4f07323cdaf3",
          "parentComponentId": null
        }
      ],
      "metrics": [
        {
          "metricRaw": "Unemployment rate",
          "numberRaw": "30%",
          "numberKind": "percent",
          "actionTitle": null,
          "calloutText": null,
          "numberScale": null,
          "numberValue": 30,
          "metricFamily": "macro",
          "numberCurrency": null
        }
      ],
      "tools": [
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "11bf495f-0cff-4122-b23c-10c531ddd4c0",
          "evidence": "Stacked bar chart showing employment status by income tier",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-17 03:52:35.565479+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Color Strategy",
            "slug": "color-strategy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
            "version": 1,
            "bodyDocId": null,
            "description": "Using color for emphasis, categories, sentiment, and hierarchy",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafd-fa907cc21520",
          "evidence": "Tier color palette carried over from p.6",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Contrast Principle",
            "slug": "contrast-principle",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bf0f-73ae-b9df-e60508cdaa65",
            "version": 1,
            "bodyDocId": null,
            "description": "Higher visual weight draws attention - use contrast strategically for emphasis",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafe-02369df99def",
          "evidence": "Chart 7 contrasts ~4% vs ~30% unemployment by tier",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Small Multiples",
            "slug": "small-multiples",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
            "version": 1,
            "bodyDocId": null,
            "description": "Repeating similar charts for comparison across categories or time",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafd-ff86f4f6a3a8",
          "evidence": "Employment status broken down repeatedly across tiers",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 8,
          "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": 6,
          "name": "Solution & Approach",
          "beatId": "019dd95a-07a5-761b-9144-3f0d16d2447f",
          "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
          "beatType": {
            "name": "Solution & Approach",
            "slug": "consultants-gambit-solution-approach",
            "status": "active",
            "canonId": "019dd9b8-071c-7161-9184-580fdac7a4f9",
            "version": 1,
            "description": null
          },
          "evidence": "Three-tier household frame + 'one size doesn't fit all' segments",
          "position": 3,
          "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": 78
        },
        {
          "to": 11,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a5-761b-9144-4ec6ce8acdb2",
          "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Tier divergence and GAFO segment differentiation",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 62
        }
      ],
      "loops": [
        {
          "to": 7,
          "from": 6,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019dd95a-088c-724c-b312-eda89a3dbc5d",
          "evidence": "Chart 6 explicitly defines Affluent / Aspirational / Lower-Income tiers; Chart 7 shows employment status differs sharply by tier.",
          "position": 2,
          "objective": "Split the household population into three tiers behaving differently",
          "confidence": 88,
          "extraction": {
            "at": "2026-04-29 13:07:29.689431+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 8,
      "type": "evidence",
      "title": "The slide uses a specific persona (the Smiths) to ground broader economic trends in a relatable narrative.",
      "function": "illustrate_case",
      "rawType": "client_example",
      "block": null,
      "metadata": {
        "slideType": "client_example",
        "slideTypeCanon": {
          "name": "Client example",
          "slug": "client_example",
          "status": "active",
          "canonId": "019de52d-0c87-77cb-9867-613ae22e95ac",
          "version": 1,
          "description": null
        },
        "function": "illustrate_case",
        "functionCanon": {
          "name": "Illustrate case",
          "slug": "illustrate_case",
          "status": "active",
          "canonId": "019de52d-13b4-772c-bb73-1873612a7463",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 88,
        "componentCount": 9,
        "textChars": 2509,
        "nDataPoints": 4,
        "notes": "The slide uses a specific persona (the Smiths) to ground broader economic trends in a relatable narrative.",
        "elementsJson": [
          "paragraph",
          "photo"
        ],
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:21.448+00",
          "seconds": 4.064,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/8",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-8",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "More than ever, one size doesn't fit all.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:28+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba62-2f90f9412252",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.15,
            "x": 0.148,
            "y": 0.23
          },
          "kind": "image",
          "text": "Photo of a row of brick houses",
          "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 19:38:21.448+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0c5d4992-e191-48c6-8a21-2a594f938355",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.55,
            "x": 0.32,
            "y": 0.23
          },
          "kind": "paragraph",
          "text": "The Smiths are a lower-income household, with earnings under $50,000 a year. This tier has been hardest hit by the economic downturn. Much like many other lower-income members of the Communispace communities, the Smiths say they will not have enough money for all of their holiday shopping. Mrs. Smith says: \"Because money is so tight, I won't be able to buy too many gifts.\" These households account for two-thirds of employment losses during the recession and have a \"fully loaded\" unemployment level as high as 30% (see Chart 7). Their overall household income has decreased 4% a year since 2006. Over that period, they have seen their share of consumption go down 4 percentage points.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:21.448+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1c8fccd3-4cb5-4f39-b58e-d3db2bac741d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.72,
            "x": 0.148,
            "y": 0.42
          },
          "kind": "paragraph",
          "text": "Surprisingly, we still see lots of holiday spirit in the Smiths and in other households in their income tier, almost twice as much as last year. Mr. Smith explains that \"the holidays are a time to forget whatever financial constraints you face and enjoy the mood.\" The Smiths want to shop but are focused on deals and sales and \"good-value gifts.\" \"For the little shopping we can do, our timing is completely dependent on sales. We even wait to see what is on sale before deciding what gifts to give,\" Mr. Smith told us.",
          "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 19:38:21.448+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "51dc7c9a-4260-41ad-8e1d-f48e84544864",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.015,
            "w": 0.13,
            "x": 0.148,
            "y": 0.21
          },
          "kind": "paragraph",
          "text": "The Lower Income",
          "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 19:38:21.448+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "554cf5e1-462d-49e1-b4e1-9533d91b038a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.72,
            "x": 0.148,
            "y": 0.77
          },
          "kind": "paragraph",
          "text": "Sales growth has been trending upward across all GAFO segments over the last year (Chart 8). But during the recession, differences in demand due to both structural and cyclical trends led to varying levels of sales declines and square footage adjustments. Each segment is now faced with its own opportunities and challenges (Table 1).",
          "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 19:38:21.448+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9a108722-9502-4785-8908-6732e71ce772",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.72,
            "x": 0.148,
            "y": 0.58
          },
          "kind": "paragraph",
          "text": "What do these differences mean for retailers? More than ever, one size doesn't fit all. For example, retailers who cater to lower-income consumers may find item-level discounts work best to prompt gift ideas that feel affordable. In contrast, retailers that serve more affluent consumers may well find that an emphasis on service or the enduring quality of holiday gifts is more effective. It gets a little trickier for retailers that cater to multiple segments within the same store or across regions. Meeting everyone's needs without ignoring any one group is never easy. Among retailers that face this challenge, the holiday winners will likely be those with more localized assortments, marketing, and experiences that can both drive sales and protect margins.",
          "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 19:38:21.448+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "dfd0365f-ccd6-416a-b8c8-f77738f82b67",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "quote",
          "text": "Because money is so tight, I won't be able to buy too many gifts.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Quote",
              "slug": "quote",
              "status": "active",
              "canonId": "019de52c-f8fb-751e-8bc6-d58e2d59562a",
              "version": 1,
              "description": "Pull quote or testimonial."
            },
            "tool": {
              "name": "Authority citation",
              "slug": "authority-citation",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-49ae-7557-89ad-3fca70469b45",
              "version": 1,
              "bodyDocId": null,
              "description": "Quoting an authority figure, study, or precedent to lend weight.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:28+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba62-30adf0cb2d57",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.5,
            "x": 0.148,
            "y": 0.74
          },
          "kind": "title",
          "text": "Some GAFO segments are on firmer footing than others",
          "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 19:38:21.448+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6b472180-e457-4243-b3ef-80214321b410",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-173f-7139-aafe-047e8b76f9f9",
          "evidence": "Header 'Some GAFO segments are on firmer footing than others' is the insight",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 88,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Concrete Language",
            "slug": "concrete-language",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bcd4-7398-9723-6aa72346170b",
            "version": 1,
            "bodyDocId": null,
            "description": "Using specific sensory details instead of abstract terms",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-173f-7139-aafe-11ea9ae151cb",
          "evidence": "Verbatim quotes: 'Because money is so tight, I won't be able to buy too many gifts'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Singularity Effect",
            "slug": "singularity-effect",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-dcd3-7287-94d8-5a49496c2ddb",
            "version": 1,
            "bodyDocId": null,
            "description": "People care more about individuals than statistics - use specific examples",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-173f-7139-aafe-0da71bbbac60",
          "evidence": "Specific named families (Mrs. Smith, Mrs. Green) personify each tier",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Story Moments",
            "slug": "story-moments",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-ae4e-768d-a18b-108e6cda511e",
            "version": 1,
            "bodyDocId": null,
            "description": "Design key emotional beats: The Shock, The Vision, The Proof, The Choice, The Call",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-173f-7139-aafe-09b594892458",
          "evidence": "Smiths/Greens/Johnsons family vignettes anchor the segmentation emotionally",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 8,
          "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": 6,
          "name": "Solution & Approach",
          "beatId": "019dd95a-07a5-761b-9144-3f0d16d2447f",
          "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
          "beatType": {
            "name": "Solution & Approach",
            "slug": "consultants-gambit-solution-approach",
            "status": "active",
            "canonId": "019dd9b8-071c-7161-9184-580fdac7a4f9",
            "version": 1,
            "description": null
          },
          "evidence": "Three-tier household frame + 'one size doesn't fit all' segments",
          "position": 3,
          "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": 78
        },
        {
          "to": 11,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a5-761b-9144-4ec6ce8acdb2",
          "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Tier divergence and GAFO segment differentiation",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 62
        }
      ],
      "loops": [
        {
          "to": 11,
          "from": 8,
          "loop": {
            "name": "06_zoom_in",
            "slug": "06-zoom-in",
            "status": "active",
            "bestFor": "Technical deep-dives, case studies, detailed analysis",
            "canonId": "019dd956-6846-74db-82be-dff5b058b072",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Big Picture -> Key Area of Focus -> Specific Detail -> Implication",
            "description": "Start broad, then progressively focus on specific details that prove your point",
            "familyLabel": null
          },
          "matchId": "019dd95a-088c-724c-b312-f04974775a1e",
          "evidence": "Pages 8-11 zoom from 'one size doesn't fit all' into segment-level growth tables and same-store sales lines.",
          "position": 3,
          "objective": "Drill from total GAFO into per-segment performance and same-store divergence",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.689431+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 9,
      "type": "analysis",
      "title": "The slide contains both a time-series line chart and a summary data table for GAFO segments.",
      "function": "analyze_data",
      "rawType": "data_table",
      "block": null,
      "metadata": {
        "slideType": "data_table",
        "slideTypeCanon": {
          "name": "Data table",
          "slug": "data_table",
          "status": "active",
          "canonId": "019de52d-0bbd-71b9-9918-417f904abbf8",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 45,
        "componentCount": 6,
        "textChars": 320,
        "nDataPoints": 48,
        "notes": "The slide contains both a time-series line chart and a summary data table for GAFO segments.",
        "elementsJson": [
          "line_chart",
          "data_table"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:20.177+00",
          "seconds": 2.774,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/9",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-9",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.28,
            "w": 0.72,
            "x": 0.14,
            "y": 0.14
          },
          "kind": "chart",
          "text": "Line chart showing GAFO sales growth by segment",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.177+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0eaac578-3346-4ec4-9adf-970e537e219a",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Sales growth",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:28+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba62-47e3acc32816",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.72,
            "x": 0.14,
            "y": 0.85
          },
          "kind": "source-note",
          "text": "Source: US Census Bureau, Euromonitor",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.177+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9db32261-20b9-4b14-b6f8-927b3636e3b0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.32,
            "w": 0.72,
            "x": 0.14,
            "y": 0.53
          },
          "kind": "table",
          "text": "Table showing change in retail space, sales/sq ft, and sales vs. prerecession/last year by segment",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Table",
              "slug": "table",
              "status": "active",
              "canonId": "019de52c-f9c8-7148-8119-eaac9594cd28",
              "version": 1,
              "description": "Tabular data layout."
            },
            "tool": null,
            "subkind": {
              "name": "Data table",
              "slug": "data",
              "status": "active",
              "canonId": "019de52d-02d5-75b8-8abf-88e92bf63569",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "data",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.177+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "be729558-863f-4fab-a0bc-3b2c5323d910",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.72,
            "x": 0.14,
            "y": 0.48
          },
          "kind": "title",
          "text": "Table 1: Key data by GAFO segment",
          "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 19:38:20.177+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "12b50442-d644-4c33-913e-254fe6dc6b29",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.72,
            "x": 0.14,
            "y": 0.09
          },
          "kind": "title",
          "text": "Chart 8: GAFO sales growth by segment, 3-month rolling average, September 2006-September 2010",
          "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 19:38:20.177+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "82481f13-176b-4522-a6f8-09310e3772f8",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafe-20ea525ad6f9",
          "evidence": "Inline color-coded legend labels each line directly",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafe-153fecd218be",
          "evidence": "Multi-series line chart for segment growth + accompanying data table",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Color Strategy",
            "slug": "color-strategy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
            "version": 1,
            "bodyDocId": null,
            "description": "Using color for emphasis, categories, sentiment, and hierarchy",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafe-19eef29d4fd8",
          "evidence": "Distinct colors per GAFO segment line",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Small Multiples",
            "slug": "small-multiples",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
            "version": 1,
            "bodyDocId": null,
            "description": "Repeating similar charts for comparison across categories or time",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafe-1eaae06a01e3",
          "evidence": "Table 1 repeats the same metric structure across six segments",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 60,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 11,
          "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": 9,
          "name": "Evidence & Proof",
          "beatId": "019dd95a-07a5-761b-9144-43581fadca11",
          "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
          "beatType": {
            "name": "Evidence & Proof",
            "slug": "consultants-gambit-evidence-proof",
            "status": "active",
            "canonId": "019dd9b8-07b1-7688-8e1e-7637fec3802a",
            "version": 1,
            "description": null
          },
          "evidence": "GAFO segment growth table, sales change vs precession, same-store sales",
          "position": 4,
          "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": 78
        },
        {
          "to": 11,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a5-761b-9144-4ec6ce8acdb2",
          "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Tier divergence and GAFO segment differentiation",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 62
        }
      ],
      "loops": [
        {
          "to": 11,
          "from": 8,
          "loop": {
            "name": "06_zoom_in",
            "slug": "06-zoom-in",
            "status": "active",
            "bestFor": "Technical deep-dives, case studies, detailed analysis",
            "canonId": "019dd956-6846-74db-82be-dff5b058b072",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Big Picture -> Key Area of Focus -> Specific Detail -> Implication",
            "description": "Start broad, then progressively focus on specific details that prove your point",
            "familyLabel": null
          },
          "matchId": "019dd95a-088c-724c-b312-f04974775a1e",
          "evidence": "Pages 8-11 zoom from 'one size doesn't fit all' into segment-level growth tables and same-store sales lines.",
          "position": 3,
          "objective": "Drill from total GAFO into per-segment performance and same-store divergence",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.689431+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 10,
      "type": "analysis",
      "title": "Chart 9",
      "function": "analyze_data",
      "rawType": "data_table",
      "block": null,
      "metadata": {
        "slideType": "data_table",
        "slideTypeCanon": {
          "name": "Data table",
          "slug": "data_table",
          "status": "active",
          "canonId": "019de52d-0bbd-71b9-9918-417f904abbf8",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 75,
        "componentCount": 8,
        "textChars": 802,
        "nDataPoints": 12,
        "notes": "Chart 9",
        "elementsJson": [
          "bar_chart_vertical",
          "data_table",
          "paragraph",
          "bullet_list",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:20.525+00",
          "seconds": 3.065,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/10",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-10",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "This is the only segment that has seen net growth in the period (Chart 9).",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:30+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba63-a9ba45a7731b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.23,
            "w": 0.52,
            "x": 0.24,
            "y": 0.19
          },
          "kind": "chart",
          "text": "Bar chart showing percentage change in sales by segment",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.525+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d2fcd319-f404-49fe-819e-91c40cc1def4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.72,
            "x": 0.14,
            "y": 0.57
          },
          "kind": "list",
          "text": "Growth is a challenge for warehouse clubs and discounters. Luxury has turned the corner but still has a long way to go.",
          "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 19:38:20.525+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8312d02f-e454-442e-ba28-41f83ca7c2ce",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Sales growth: 5.9%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:30+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba63-adbca599bd95",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.07,
            "w": 0.72,
            "x": 0.14,
            "y": 0.48
          },
          "kind": "paragraph",
          "text": "The general merchandise segment may post slower growth this season than last because it is coming off a relatively strong base. Sales in the 12 months that ended in September were up 5.9% from the same period in 2007.",
          "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 19:38:20.525+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1c4ada16-78ab-4529-9a4b-5104f9774cb1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.54,
            "x": 0.23,
            "y": 0.43
          },
          "kind": "source-note",
          "text": "Note: TTM represents trailing twelve months. Data for the office supplies segment are for the twelve months ended August 2010; the September 2010 data are not yet available. Source: US Census Bureau",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.525+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8d685313-9b51-44e9-af99-8b2675fbbd72",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.6,
            "x": 0.2,
            "y": 0.39
          },
          "kind": "table",
          "text": "Net change 2007-2010 values for each segment",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Table",
              "slug": "table",
              "status": "active",
              "canonId": "019de52c-f9c8-7148-8119-eaac9594cd28",
              "version": 1,
              "description": "Tabular data layout."
            },
            "tool": null,
            "subkind": {
              "name": "Data table",
              "slug": "data",
              "status": "active",
              "canonId": "019de52d-02d5-75b8-8abf-88e92bf63569",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "data",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.525+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "db245517-5312-481e-ad9f-b812e94f360a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.52,
            "x": 0.24,
            "y": 0.13
          },
          "kind": "title",
          "text": "Change in sales by GAFO segment, September 2010 TTM versus September 2007 TTM",
          "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 19:38:20.525+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a5141914-64c3-4fb1-a04e-ebdc90f8fa62",
          "parentComponentId": null
        }
      ],
      "metrics": [
        {
          "metricRaw": "Sales growth",
          "numberRaw": "5.9%",
          "numberKind": "percent",
          "actionTitle": "Change in sales by GAFO segment, September 2010 TTM versus September 2007 TTM",
          "calloutText": "This is the only segment that has seen net growth in the period (Chart 9).",
          "numberScale": null,
          "numberValue": 5.9,
          "metricFamily": "growth_rate",
          "numberCurrency": null
        }
      ],
      "tools": [
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafe-2d4ac27a1d0f",
          "evidence": "Callout text annotates the chart with the so-what",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 10,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafe-2437500b8eb9",
          "evidence": "Comparative bar chart of TTM sales change by segment",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 10,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Von Restorff Effect",
            "slug": "von-restorff-effect",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-beab-73d8-9f62-30d0332e926e",
            "version": 1,
            "bodyDocId": null,
            "description": "Items that stand out are noticed and remembered - make key points visually distinct",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafe-280a218cf84e",
          "evidence": "Callout flags 'the only segment that has seen net growth'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 10,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 11,
          "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": 9,
          "name": "Evidence & Proof",
          "beatId": "019dd95a-07a5-761b-9144-43581fadca11",
          "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
          "beatType": {
            "name": "Evidence & Proof",
            "slug": "consultants-gambit-evidence-proof",
            "status": "active",
            "canonId": "019dd9b8-07b1-7688-8e1e-7637fec3802a",
            "version": 1,
            "description": null
          },
          "evidence": "GAFO segment growth table, sales change vs precession, same-store sales",
          "position": 4,
          "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": 78
        },
        {
          "to": 11,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a5-761b-9144-4ec6ce8acdb2",
          "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Tier divergence and GAFO segment differentiation",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 62
        }
      ],
      "loops": [
        {
          "to": 11,
          "from": 8,
          "loop": {
            "name": "06_zoom_in",
            "slug": "06-zoom-in",
            "status": "active",
            "bestFor": "Technical deep-dives, case studies, detailed analysis",
            "canonId": "019dd956-6846-74db-82be-dff5b058b072",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Big Picture -> Key Area of Focus -> Specific Detail -> Implication",
            "description": "Start broad, then progressively focus on specific details that prove your point",
            "familyLabel": null
          },
          "matchId": "019dd95a-088c-724c-b312-f04974775a1e",
          "evidence": "Pages 8-11 zoom from 'one size doesn't fit all' into segment-level growth tables and same-store sales lines.",
          "position": 3,
          "objective": "Drill from total GAFO into per-segment performance and same-store divergence",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.689431+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 11,
      "type": "analysis",
      "title": "The slide discusses the recovery of retail sales post-recession, noting that while growth has returned, it has not fully offset previous losses.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 84,
        "componentCount": 8,
        "textChars": 2102,
        "nDataPoints": 8,
        "notes": "The slide discusses the recovery of retail sales post-recession, noting that while growth has returned, it has not fully offset previous losses.",
        "elementsJson": [
          "paragraph",
          "bullet_list",
          "line_chart",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:21.068+00",
          "seconds": 3.47,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/11",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-11",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Midtier department stores are doing well of late, but they face a special challenge because they cater to the broadest range of customers and must effectively straddle multiple selling strategies.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:30+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba63-3eafbd6ec42a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.65,
            "x": 0.18,
            "y": 0.45
          },
          "kind": "chart",
          "text": "Line chart showing same-store sales trends for Luxury, Midtier, Warehouse clubs, and Discounters.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:21.068+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7890c7f0-27a4-4ce7-8722-f952a31ec16f",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "same-store sales growth: 9.3%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:30+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba63-4085a9c3cde7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.65,
            "x": 0.18,
            "y": 0.19
          },
          "kind": "paragraph",
          "text": "Midtier department stores are spread thin. Midtier department stores are doing well of late, but they face a special challenge because they cater to the broadest range of customers and must effectively straddle multiple selling strategies. Although year-to-date same-store sales growth is positive at 4.3%, it comes after a 5.9% average drop last year. To help drive growth, some midtier stores are working to attract more affluent and aspirational consumers. Sears recently entered into a partnership with upscale French Connection UK to sell an exclusive line, UK Style by French Connection, starting in March 2011. Macy's is also targeting fashion-forward juniors with a new limited-edition runway collection from designer Kinder Aggugini.",
          "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 19:38:21.068+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "42f6a8b2-6b0a-49a0-94ec-a8816099f310",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.72,
            "x": 0.14,
            "y": 0.78
          },
          "kind": "paragraph",
          "text": "Although sales in the clothing and clothing accessories sector rebounded significantly over the last 12 months, they are far from making up for the segment's losses during the recession. Sales grew by $7.8 billion over the last 12 months, but this came after a $15.5 billion loss in 2009 alone (for the 12 months ending in September), and the segment still trails its prerecession sales levels by 2.5%. This forced many stores to close: The last three years have seen a 10% drop in retail space for clothing and clothing accessories",
          "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 19:38:21.068+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "55016cb5-9788-4aa7-9333-d31dbb59c54d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.65,
            "x": 0.18,
            "y": 0.09
          },
          "kind": "paragraph",
          "text": "not lifting all boats equally. Nordstrom saw a 9.3% increase in same-store salesthrough September of this year after witnessing a decrease of 9.8% in the same period last year. Meanwhile, Saks Fifth Avenue same-store sales have increased only 5.1% so far this year, this after a much steeper decline of 20.6% in 2009.",
          "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 19:38:21.068+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "821152d4-b5f0-43c7-9307-c42018a41b7b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.35,
            "x": 0.24,
            "y": 0.72
          },
          "kind": "source-note",
          "text": "Note: Warehouse clubs exclude the impact of fuel. Source: International Council of Shopping Centers",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:21.068+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "03a942f2-d865-4c0d-bfcb-9377a4718c7c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.72,
            "x": 0.14,
            "y": 0.39
          },
          "kind": "title",
          "text": "Chart 10: Change in same-store sales, 3-month rolling average, January 2008-September 2010",
          "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 19:38:21.068+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cd6382d7-a3a9-4265-b305-28707c2ed189",
          "parentComponentId": null
        }
      ],
      "metrics": [
        {
          "metricRaw": "same-store sales growth",
          "numberRaw": "9.3%",
          "numberKind": "percent",
          "actionTitle": null,
          "calloutText": "Midtier department stores are doing well of late, but they face a special challenge because they cater to the broadest range of customers and must effectively straddle multiple selling strategies.",
          "numberScale": null,
          "numberValue": 9.3,
          "metricFamily": "growth_rate",
          "numberCurrency": null
        }
      ],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-173f-7139-aafe-311a1b6dbb38",
          "evidence": "Callout: midtier department stores 'must effectively straddle multiple selling strategies'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafe-362d6f4abc44",
          "evidence": "Same-store sales lines annotated with retail format labels",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 72,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafe-381f2ce515bf",
          "evidence": "3-month rolling average line chart for same-store sales",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 11,
          "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": 9,
          "name": "Evidence & Proof",
          "beatId": "019dd95a-07a5-761b-9144-43581fadca11",
          "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
          "beatType": {
            "name": "Evidence & Proof",
            "slug": "consultants-gambit-evidence-proof",
            "status": "active",
            "canonId": "019dd9b8-07b1-7688-8e1e-7637fec3802a",
            "version": 1,
            "description": null
          },
          "evidence": "GAFO segment growth table, sales change vs precession, same-store sales",
          "position": 4,
          "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": 78
        },
        {
          "to": 11,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 6,
          "name": "The Implications (So What)",
          "beatId": "019dd95a-07a5-761b-9144-4ec6ce8acdb2",
          "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
          "beatType": {
            "name": "The Implications (So What)",
            "slug": "triple-take-the-implications-so-what",
            "status": "active",
            "canonId": "019dd9b8-09c7-75cd-8c7b-ae0e23cca2b8",
            "version": 1,
            "description": null
          },
          "evidence": "Tier divergence and GAFO segment differentiation",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Reflection",
            "slug": "reflection",
            "status": "active",
            "canonId": "019dd9b8-0510-73fd-8d00-1c7e45f7bc98",
            "version": 1,
            "description": "The \"so what\" beat. Used by analytical arcs (Triple-take, Onion) and learning arcs (Voyage-return, Tragedy)."
          },
          "alignedBlockIds": null,
          "matchConfidence": 62
        }
      ],
      "loops": [
        {
          "to": 11,
          "from": 8,
          "loop": {
            "name": "06_zoom_in",
            "slug": "06-zoom-in",
            "status": "active",
            "bestFor": "Technical deep-dives, case studies, detailed analysis",
            "canonId": "019dd956-6846-74db-82be-dff5b058b072",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Big Picture -> Key Area of Focus -> Specific Detail -> Implication",
            "description": "Start broad, then progressively focus on specific details that prove your point",
            "familyLabel": null
          },
          "matchId": "019dd95a-088c-724c-b312-f04974775a1e",
          "evidence": "Pages 8-11 zoom from 'one size doesn't fit all' into segment-level growth tables and same-store sales lines.",
          "position": 3,
          "objective": "Drill from total GAFO into per-segment performance and same-store divergence",
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:29.689431+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 12,
      "type": "analysis",
      "title": "The slide is a text-heavy newsletter page summarizing market performance and holiday outlooks.",
      "function": "summarize",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 85,
        "componentCount": 8,
        "textChars": 3232,
        "nDataPoints": 12,
        "notes": "The slide is a text-heavy newsletter page summarizing market performance and holiday outlooks.",
        "elementsJson": [
          "paragraph"
        ],
        "confidence": 0.9,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:21.947+00",
          "seconds": 4.309,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/12",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-12",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Hopes are high that this holiday season will be the best in years.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:30+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba63-ccf0f83c6fec",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "holiday growth forecast: 3%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:30+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba63-d71186ce3b1d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.21,
            "w": 0.72,
            "x": 0.14,
            "y": 0.26
          },
          "kind": "paragraph",
          "text": "The electronics and appliances segment has been making a comeback, and is expected to continue on a positive trajectory through the holidays. Although its sales for the 12 months ending in September 2010 were 7.7% below 2007 levels, and grew only 0.8% in the last twelve months, it has recently been the fastest-growing of GAFO segments (see Chart 8). And store productivity actually has increased 3.2% as retail selling space fell 10.5% over the same period, driven largely by Circuit City's closing of its last 567 stores in 2008 and 2009. Sales growth this season will likely get a boost from a few hot products. Our Communispace community members are particularly excited by LED and 3-D TVs, iPads and increasingly affordable smartphones and digital cameras.",
          "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 19:38:21.947+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "017e55b6-406c-4ffd-b122-2b056c949eca",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.16,
            "w": 0.72,
            "x": 0.14,
            "y": 0.73
          },
          "kind": "paragraph",
          "text": "Here's to a happy holiday season! Hopes are high that this holiday season will be the best in years. Bain's estimate of 3% growth is at the high end of other holiday forecasts, which range from 2.0% to 3.5% (Chart 11).10 But growth is not a given. As the season gets set to kick off, an unseasonably warm October could hurt sales of winter merchandise - or at least delay them until November. This, combined with higher inventory levels could pressure retailers to step up promotional activity early, threatening margins. We will continue to report on those retailers who are succeeding and to examine the practices that are most important in driving their success.",
          "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 19:38:21.947+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1d9314d0-c504-4b60-b267-10002fca88bb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.24,
            "w": 0.72,
            "x": 0.14,
            "y": 0.48
          },
          "kind": "paragraph",
          "text": "The furniture and home furnishings segment was hit hardest during the recession and has a long road ahead. As the housing market faltered, sales dropped 21% from the 12 months ending in September 2007 to the same period this year, the largest sales drop of all GAFO segments. Store closures have been widespread: This segment has seen a 17% drop in retail space since 2007. Stores that survived suffered a 5.2% drop in productivity over the same period. Sales growth this year, however, gives these retailers some tailwind going into the holiday season. At the furniture market this month in High Point, North Carolina, Market Authority president and CEO Brian Casey reported an increased number of buyers, further fueling a positive outlook for the holidays. Among the trends driving the increased activity are innovative designs to accommodate large flat-panel TVs and other new technologies.",
          "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 19:38:21.947+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3637f3d2-0dd6-4358-be70-adb2efe2e942",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.16,
            "w": 0.72,
            "x": 0.14,
            "y": 0.09
          },
          "kind": "paragraph",
          "text": "retailers. The bonus for the remaining stores is that productivity is actually 8.3% higher than it was in 2007. Recent results also have been promising: Back-to-school August saw modest year-over-year growth of 1.9%, followed by an even more hopeful September, which ended with a 4.4% increase over last year (see Chart 8). Growth is being differentially driven by fashion-forward shoppers. A joint study by Bain and Vogue conducted this summer shows that style-conscious women spend about three times what the average American consumer spends on clothing and accessories.",
          "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 19:38:21.947+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e785f378-74ba-4431-93cb-18882a74f6b9",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "quote",
          "text": "Market Authority president and CEO Brian Casey reported an increased number of buyers, further fueling a positive outlook for the holidays.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Quote",
              "slug": "quote",
              "status": "active",
              "canonId": "019de52c-f8fb-751e-8bc6-d58e2d59562a",
              "version": 1,
              "description": "Pull quote or testimonial."
            },
            "tool": {
              "name": "Authority citation",
              "slug": "authority-citation",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-49ae-7557-89ad-3fca70469b45",
              "version": 1,
              "bodyDocId": null,
              "description": "Quoting an authority figure, study, or precedent to lend weight.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:30+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba63-d1c21d7a4b2d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.72,
            "x": 0.14,
            "y": 0.91
          },
          "kind": "source-note",
          "text": "10 The forecasts are not all directly comparable because they may cover different sector mixes and periods.",
          "attrs": {
            "numbered": true
          },
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:21.947+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "785b7381-cbe6-4d6e-90a1-1b8131d113b3",
          "parentComponentId": null
        }
      ],
      "metrics": [
        {
          "metricRaw": "holiday growth forecast",
          "numberRaw": "3%",
          "numberKind": "percent",
          "actionTitle": null,
          "calloutText": "Hopes are high that this holiday season will be the best in years.",
          "numberScale": null,
          "numberValue": 3,
          "metricFamily": "growth_rate",
          "numberCurrency": null
        }
      ],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019dd95a-173f-7139-aafe-3e1970005c2c",
          "evidence": "Section title 'Here's to a happy holiday season!'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 85,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Closing Techniques",
            "slug": "closing-techniques",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-af13-774b-a4fd-7db0a3a88d51",
            "version": 1,
            "bodyDocId": null,
            "description": "Strong endings: Callback, challenge, vision, clear CTA, memorable line",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-173f-7139-aafe-41ab21780df0",
          "evidence": "Vision-style close: 'Hopes are high that this holiday season will be the best in years'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Emotional Appeal",
            "slug": "emotional-appeal",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bde9-7668-8be7-0097678fec59",
            "version": 1,
            "bodyDocId": null,
            "description": "Connecting to audience feelings rather than just logic",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-173f-7139-aafe-45c8171e8634",
          "evidence": "Optimistic register tempered with 'growth is not a given' caution",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 60,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 13,
          "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": 12,
          "name": "Impact & Next Steps",
          "beatId": "019dd95a-07a5-761b-9144-47a5d409f267",
          "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
          "beatType": {
            "name": "Impact & Next Steps",
            "slug": "consultants-gambit-impact-next-steps",
            "status": "active",
            "canonId": "019dd9b8-0849-7728-9ee9-fd1609c4c655",
            "version": 1,
            "description": null
          },
          "evidence": "'Happy holiday season' verdict + 3% Bain forecast vs peer forecasts",
          "position": 5,
          "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": 78
        },
        {
          "to": 13,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 12,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a5-761b-9144-52add3dcb63e",
          "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Forecast + 'retailers must straddle multiple selling strategies'",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 62
        }
      ],
      "loops": [
        {
          "to": 13,
          "from": 12,
          "loop": {
            "name": "41_so_what_cascade",
            "slug": "41-so-what-cascade",
            "status": "active",
            "bestFor": "Data presentations, executive summaries, driving to recommendations",
            "canonId": "019dd956-769f-7208-afbc-f28985c6f4fb",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Data -> So What? (Insight 1) -> So What? (Insight 2) -> So What? (The Action)",
            "description": "Chain insights together, each answering 'so what?' until you reach the actionable conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-088c-724c-b312-f6c49a1d7401",
          "evidence": "p.12 'Hopes are high...' synthesis + p.13 Bain 3% forecast benchmarked against peer forecasts and newsletter schedule.",
          "position": 4,
          "objective": "Translate accumulated data into a forecast and an action cadence",
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:29.689431+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 13,
      "type": "analysis",
      "title": "Contains two distinct charts: a bar chart for sales forecasts and a timeline/calendar table for data release tracking.",
      "function": "analyze_data",
      "rawType": "data_table",
      "block": null,
      "metadata": {
        "slideType": "data_table",
        "slideTypeCanon": {
          "name": "Data table",
          "slug": "data_table",
          "status": "active",
          "canonId": "019de52d-0bbd-71b9-9918-417f904abbf8",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 62,
        "componentCount": 7,
        "textChars": 583,
        "nDataPoints": 12,
        "notes": "Contains two distinct charts: a bar chart for sales forecasts and a timeline/calendar table for data release tracking.",
        "elementsJson": [
          "bar_chart_horizontal",
          "data_table",
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:20.447+00",
          "seconds": 2.694,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/13",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-13",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.21,
            "w": 0.71,
            "x": 0.145,
            "y": 0.165
          },
          "kind": "chart",
          "text": "Bar chart showing 2010 holiday sales growth forecasts by various organizations.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Horizontal bar chart",
              "slug": "bar-horizontal",
              "status": "active",
              "canonId": "019de52c-fec4-7221-986b-1cb5f5e84b1f",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-horizontal",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.447+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "267648ae-69aa-4d1e-9623-3ee91f15c99c",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "holiday sales growth: 3.0%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:30+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba63-5f68d67fb2c3",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.71,
            "x": 0.145,
            "y": 0.46
          },
          "kind": "paragraph",
          "text": "Newsletter schedule: Our next newsletter will be released in early November, with a new issue every two to three weeks through the holiday season (Chart 12).",
          "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 19:38:20.447+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7fab3981-00f0-4b87-8bb0-55f9e50c96fd",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.01,
            "w": 0.54,
            "x": 0.23,
            "y": 0.385
          },
          "kind": "source-note",
          "text": "Source: International Council of Shopping Centers; Retail Forward; Deloitte; National Retail Federation",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.447+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3951684c-7e36-4597-a8f4-4d2f4cb44d2a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.57,
            "x": 0.215,
            "y": 0.63
          },
          "kind": "table",
          "text": "Calendar table showing data release dates for various economic indicators and corresponding newsletter publication dates.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Table",
              "slug": "table",
              "status": "active",
              "canonId": "019de52c-f9c8-7148-8119-eaac9594cd28",
              "version": 1,
              "description": "Tabular data layout."
            },
            "tool": null,
            "subkind": {
              "name": "Data table",
              "slug": "data",
              "status": "active",
              "canonId": "019de52d-02d5-75b8-8abf-88e92bf63569",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "data",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.447+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d8d1928b-01ed-4688-9754-81a546b44a54",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.015,
            "w": 0.4,
            "x": 0.145,
            "y": 0.565
          },
          "kind": "title",
          "text": "Chart 12: Indicator update and newsletter schedule",
          "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 19:38:20.447+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9bbde75a-6fbb-4633-a289-e00cd9440c98",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.015,
            "w": 0.35,
            "x": 0.145,
            "y": 0.092
          },
          "kind": "title",
          "text": "Chart 11: Forecasted holiday sales growth, 2010",
          "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 19:38:20.447+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d3b320e0-5374-4edb-a435-6eedb1026734",
          "parentComponentId": null
        }
      ],
      "metrics": [
        {
          "metricRaw": "holiday sales growth",
          "numberRaw": "3.0%",
          "numberKind": "percent",
          "actionTitle": null,
          "calloutText": null,
          "numberScale": null,
          "numberValue": 3,
          "metricFamily": "growth_rate",
          "numberCurrency": null
        }
      ],
      "tools": [
        {
          "tool": {
            "name": "Annotation",
            "slug": "annotation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b5b9-7668-bf0e-3af99823ec5c",
            "version": 1,
            "bodyDocId": null,
            "description": "Adding explanatory labels to highlight key data points",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafe-4c09b8504bcc",
          "evidence": "Measure + Period columns annotate each forecast bar",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Authority Bias",
            "slug": "authority-bias",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-c38d-70b9-a284-b2b479763356",
            "version": 1,
            "bodyDocId": null,
            "description": "Expert opinions are weighted more heavily - cite credible sources",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Architect",
            "Storyteller"
          ],
          "matchId": "019dd95a-173f-7139-aafe-55bf3b0d0137",
          "evidence": "Cites named research authorities to validate Bain's 3% number",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Social Validation",
            "slug": "social-validation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-ddaa-77f9-890c-a1cf082c5ccd",
            "version": 1,
            "bodyDocId": null,
            "description": "Showing others have done something, especially similar others",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019dd95a-173f-7139-aafe-52a3048cdc91",
          "evidence": "Deloitte, NRF, Retail Forward, ICSC peer forecasts shown alongside Bain's",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Von Restorff Effect",
            "slug": "von-restorff-effect",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-beab-73d8-9f62-30d0332e926e",
            "version": 1,
            "bodyDocId": null,
            "description": "Items that stand out are noticed and remembered - make key points visually distinct",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019dd95a-173f-7139-aafe-4b39fcd8f5bf",
          "evidence": "Bain's bar shaded yellow vs blue peer forecasts",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 88,
          "extraction": {
            "at": "2026-04-29 13:07:33.438368+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 13,
          "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": 12,
          "name": "Impact & Next Steps",
          "beatId": "019dd95a-07a5-761b-9144-47a5d409f267",
          "matchId": "019dd95a-0543-7581-99b0-cf9ec2453d73",
          "beatType": {
            "name": "Impact & Next Steps",
            "slug": "consultants-gambit-impact-next-steps",
            "status": "active",
            "canonId": "019dd9b8-0849-7728-9ee9-fd1609c4c655",
            "version": 1,
            "description": null
          },
          "evidence": "'Happy holiday season' verdict + 3% Bain forecast vs peer forecasts",
          "position": 5,
          "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": 78
        },
        {
          "to": 13,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 12,
          "name": "The Action (Now What)",
          "beatId": "019dd95a-07a5-761b-9144-52add3dcb63e",
          "matchId": "019dd95a-0543-7581-99b0-d19a7223cdd2",
          "beatType": {
            "name": "The Action (Now What)",
            "slug": "triple-take-the-action-now-what",
            "status": "active",
            "canonId": "019dd9b8-0a5e-735a-bf53-3a1ba629b7aa",
            "version": 1,
            "description": null
          },
          "evidence": "Forecast + 'retailers must straddle multiple selling strategies'",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": {
            "name": "Resolution",
            "slug": "resolution",
            "status": "active",
            "canonId": "019dd9b8-045d-703b-8dd7-e92aba3ba91b",
            "version": 1,
            "description": "How the deck ends. Required in 19/20 arcs. The exception (Sparkline) ends with new bliss which is functionally a resolution."
          },
          "alignedBlockIds": null,
          "matchConfidence": 62
        }
      ],
      "loops": [
        {
          "to": 13,
          "from": 12,
          "loop": {
            "name": "41_so_what_cascade",
            "slug": "41-so-what-cascade",
            "status": "active",
            "bestFor": "Data presentations, executive summaries, driving to recommendations",
            "canonId": "019dd956-769f-7208-afbc-f28985c6f4fb",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Data -> So What? (Insight 1) -> So What? (Insight 2) -> So What? (The Action)",
            "description": "Chain insights together, each answering 'so what?' until you reach the actionable conclusion",
            "familyLabel": null
          },
          "matchId": "019dd95a-088c-724c-b312-f6c49a1d7401",
          "evidence": "p.12 'Hopes are high...' synthesis + p.13 Bain 3% forecast benchmarked against peer forecasts and newsletter schedule.",
          "position": 4,
          "objective": "Translate accumulated data into a forecast and an action cadence",
          "confidence": 70,
          "extraction": {
            "at": "2026-04-29 13:07:29.689431+00",
            "model": "claude-legacy",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 14,
      "type": "appendix",
      "title": "The table uses checkmarks to indicate inclusion of specific store types in broader retail categories.",
      "function": "appendix",
      "rawType": "appendix_data",
      "block": null,
      "metadata": {
        "slideType": "appendix_data",
        "slideTypeCanon": {
          "name": "Appendix data",
          "slug": "appendix_data",
          "status": "active",
          "canonId": "019de52d-078a-745b-9ee4-c15f2f539acd",
          "version": 1,
          "description": null
        },
        "function": "appendix",
        "functionCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-138d-750b-83c3-49b4bc7a7a38",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 12,
        "componentCount": 4,
        "textChars": 73,
        "nDataPoints": 0,
        "notes": "The table uses checkmarks to indicate inclusion of specific store types in broader retail categories.",
        "elementsJson": [
          "comparison_table"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:22.699+00",
          "seconds": 4.635,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/14",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-14",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.305,
            "w": 0.534,
            "x": 0.233,
            "y": 0.195
          },
          "kind": "table",
          "text": "Table showing store types vs retail categories",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Table",
              "slug": "table",
              "status": "active",
              "canonId": "019de52c-f9c8-7148-8119-eaac9594cd28",
              "version": 1,
              "description": "Tabular data layout."
            },
            "tool": null,
            "subkind": {
              "name": "Data table",
              "slug": "data",
              "status": "active",
              "canonId": "019de52d-02d5-75b8-8abf-88e92bf63569",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "data",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:22.699+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9f8c1c9e-3cbd-4a6a-9429-3bd08487cc51",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.018,
            "w": 0.085,
            "x": 0.146,
            "y": 0.093
          },
          "kind": "title",
          "text": "Appendix",
          "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 19:38:22.699+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5aae9548-ca88-48fd-bfcc-7fa77f9fc03b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.018,
            "w": 0.085,
            "x": 0.445,
            "y": 0.164
          },
          "kind": "title",
          "text": "Definitions",
          "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 19:38:22.699+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "46cbedd5-b25d-4e41-b6f3-51fb969ce6b6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.015,
            "w": 0.055,
            "x": 0.146,
            "y": 0.141
          },
          "kind": "title",
          "text": "Chart 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": "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 19:38:22.699+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d20b521b-2722-4e8b-95d5-dd4d0148dc15",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 15,
      "type": "setup",
      "function": "other",
      "rawType": "appendix_disclosure",
      "block": null,
      "metadata": {
        "slideType": "appendix_disclosure",
        "slideTypeCanon": {
          "name": "Appendix disclosure",
          "slug": "appendix_disclosure",
          "status": "active",
          "canonId": "019de52d-07b2-7549-8e8b-932a19f6e616",
          "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": 26,
        "componentCount": 3,
        "textChars": 524,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:20.764+00",
          "seconds": 2.581,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/15",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-15",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.075,
            "w": 0.708,
            "x": 0.146,
            "y": 0.141
          },
          "kind": "disclaimer",
          "text": "Bain & Company has included in this document information and analyses based on the sources referenced below as well as our own research and experience. Bain has not independently verified this information and makes no representation or warranty...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Disclaimer",
              "slug": "disclaimer",
              "status": "active",
              "canonId": "91173477-d91f-4024-bbaf-d4f93e3f82dc",
              "version": 1,
              "description": "Legal/cautionary text that occupies most of the body of its slide."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.764+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9ce75a86-cbfc-4b04-8bc5-7e0dccb2dd4f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.585,
            "w": 0.708,
            "x": 0.146,
            "y": 0.283
          },
          "kind": "list",
          "text": "Bureau of Economic Analysis. “National Income and Product Accounts Table: Gross Domestic Product, Seasonally Adjusted at Annual Rates.” ... Bureau of Labor Statistics. “Consumer Expenditures in 2008.” ... Deloitte. “Deloitte Forecasts a 2 Percent Increase...",
          "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 19:38:20.764+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c3a33c10-8954-4ae1-9d10-4f0455700d7d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.021,
            "w": 0.215,
            "x": 0.146,
            "y": 0.093
          },
          "kind": "title",
          "text": "Selected References",
          "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 19:38:20.764+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "dbe19798-c85e-4c8a-9fcc-7c34fd9da312",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 16,
      "type": "appendix",
      "title": "This is a bibliography/reference page.",
      "function": "appendix",
      "rawType": "appendix_disclosure",
      "block": null,
      "metadata": {
        "slideType": "appendix_disclosure",
        "slideTypeCanon": {
          "name": "Appendix disclosure",
          "slug": "appendix_disclosure",
          "status": "active",
          "canonId": "019de52d-07b2-7549-8e8b-932a19f6e616",
          "version": 1,
          "description": null
        },
        "function": "appendix",
        "functionCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-138d-750b-83c3-49b4bc7a7a38",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 9,
        "componentCount": 3,
        "textChars": 114,
        "nDataPoints": 0,
        "notes": "This is a bibliography/reference page.",
        "elementsJson": [
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:20.859+00",
          "seconds": 2.625,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/16",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-16",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.82,
            "w": 0.72,
            "x": 0.14,
            "y": 0.09
          },
          "kind": "list",
          "text": "List of 14 bibliographic references and source citations.",
          "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 19:38:20.859+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fceb222a-1f1e-490f-93a3-6dbc21fd713e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.12,
            "x": 0.16,
            "y": 0.94
          },
          "kind": "paragraph",
          "text": "BAIN & COMPANY",
          "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 19:38:20.859+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "da92891d-8253-4f4c-8c00-12a4ae44210b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.23,
            "x": 0.63,
            "y": 0.94
          },
          "kind": "paragraph",
          "text": "2010 Retail Holiday Newsletter #1 | Page 16",
          "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 19:38:20.859+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e98a9951-0b70-4c56-986c-596e97420194",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 17,
      "type": "setup",
      "function": "other",
      "rawType": "appendix_disclosure",
      "block": null,
      "metadata": {
        "slideType": "appendix_disclosure",
        "slideTypeCanon": {
          "name": "Appendix disclosure",
          "slug": "appendix_disclosure",
          "status": "active",
          "canonId": "019de52d-07b2-7549-8e8b-932a19f6e616",
          "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": 9,
        "componentCount": 3,
        "textChars": 110,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:20.206+00",
          "seconds": 1.956,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/17",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-17",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.82,
            "w": 0.72,
            "x": 0.14,
            "y": 0.09
          },
          "kind": "list",
          "text": "List of 13 bibliographic references and data sources.",
          "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 19:38:20.206+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "538f77d2-d6ec-4cc7-b684-fd3a972f4842",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.12,
            "x": 0.14,
            "y": 0.94
          },
          "kind": "paragraph",
          "text": "BAIN & COMPANY",
          "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 19:38:20.206+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "690c9a27-2dc4-42a7-a61e-e20f9fa81e71",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.37,
            "x": 0.49,
            "y": 0.94
          },
          "kind": "paragraph",
          "text": "2010 Retail Holiday Newsletter #1 | Page 17",
          "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 19:38:20.206+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e5527e63-a51f-458b-82f3-61155ae6abca",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 18,
      "type": "appendix",
      "function": "appendix",
      "rawType": "appendix_disclosure",
      "block": null,
      "metadata": {
        "slideType": "appendix_disclosure",
        "slideTypeCanon": {
          "name": "Appendix disclosure",
          "slug": "appendix_disclosure",
          "status": "active",
          "canonId": "019de52d-07b2-7549-8e8b-932a19f6e616",
          "version": 1,
          "description": null
        },
        "function": "appendix",
        "functionCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-138d-750b-83c3-49b4bc7a7a38",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 12,
        "componentCount": 2,
        "textChars": 281,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:38:20.396+00",
          "seconds": 2.074,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b635-d4f5f6e4252d/18",
        "deck": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d#slide-18",
        "deckJson": "/decks/019dd923-5ca1-7489-b635-d4f5f6e4252d.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.042,
            "w": 0.708,
            "x": 0.146,
            "y": 0.093
          },
          "kind": "disclaimer",
          "text": "Wilson, Eric. “Macy’s Gets Fast Fashion.” New York Times, October 20, 2010. Available at http://www.nytimes.com/2010/10/21/fashion/21ROW.html?_r=1&scp=1&sq=fast%20fashion&st=cse (accessed October 22, 2010).",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Disclaimer",
              "slug": "disclaimer",
              "status": "active",
              "canonId": "91173477-d91f-4024-bbaf-d4f93e3f82dc",
              "version": 1,
              "description": "Legal/cautionary text that occupies most of the body of its slide."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:38:20.396+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "caf25016-a255-4e64-8128-09d5f8816c35",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "quote",
          "text": "Wilson, Eric. \"Macy's Gets Fast Fashion.\" New York Times, October 20, 2010.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Quote",
              "slug": "quote",
              "status": "active",
              "canonId": "019de52c-f8fb-751e-8bc6-d58e2d59562a",
              "version": 1,
              "description": "Pull quote or testimonial."
            },
            "tool": {
              "name": "Authority citation",
              "slug": "authority-citation",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-49ae-7557-89ad-3fca70469b45",
              "version": 1,
              "bodyDocId": null,
              "description": "Quoting an authority figure, study, or precedent to lend weight.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 12:57:30+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-b48d-72e7-ba63-2ecf76137492",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    }
  ],
  "arcBeats": [
    {
      "from": 1,
      "to": 3,
      "label": "Situation & Context",
      "description": "Cover letter + holiday sales history + GAFO sales context"
    },
    {
      "from": 4,
      "to": 5,
      "label": "Problem & Complication",
      "description": "'Where's the bounce-back?' + flat disposable income"
    },
    {
      "from": 6,
      "to": 8,
      "label": "Solution & Approach",
      "description": "Three-tier household frame + 'one size doesn't fit all' segments"
    },
    {
      "from": 9,
      "to": 11,
      "label": "Evidence & Proof",
      "description": "GAFO segment growth table, sales change vs precession, same-store sales"
    },
    {
      "from": 12,
      "to": 13,
      "label": "Impact & Next Steps",
      "description": "'Happy holiday season' verdict + 3% Bain forecast vs peer forecasts"
    }
  ],
  "loops": [
    {
      "from": 2,
      "to": 5,
      "label": "Pattern Hunter",
      "description": "Stack multiple data series to argue recovery is real but income-constrained"
    },
    {
      "from": 6,
      "to": 7,
      "label": "Segmentation Split",
      "description": "Split the household population into three tiers behaving differently"
    },
    {
      "from": 8,
      "to": 11,
      "label": "Zoom In",
      "description": "Drill from total GAFO into per-segment performance and same-store divergence"
    },
    {
      "from": 12,
      "to": 13,
      "label": "So What Cascade",
      "description": "Translate accumulated data into a forecast and an action cadence"
    }
  ]
}