{
  "@context": "https://koinonlink.com/schema/creator/v1.3",
  "@type": "Creator",
  "schema_version": "1.3",
  "id": "koinon:creator:youtube_griffpatch",
  "url": "https://koinonlink.com/kol/youtube/griffpatch",
  "alternate": {
    "html": "https://koinonlink.com/kol/youtube/griffpatch",
    "json": "https://koinonlink.com/kol/youtube/griffpatch.json",
    "markdown": "https://koinonlink.com/kol/youtube/griffpatch.md"
  },
  "identity": {
    "display_name": "griffpatch",
    "handle": "griffpatch",
    "platform": "youtube",
    "platform_url": "https://www.youtube.com/@griffpatch",
    "website": null,
    "country": "GB",
    "country_name": "United Kingdom",
    "location_text": null,
    "entity_type": "creator",
    "person_id": null,
    "person_id_note": "Cross-platform identity not resolved for this creator.",
    "other_accounts": [],
    "claimed": false,
    "claimed_note": "Not claimed. This says nothing about the creator — most profiles are simply not claimed yet.",
    "declared_accounts": []
  },
  "first_party": null,
  "reach": {
    "followers": 503000,
    "following": null,
    "posts_total": null,
    "posts_observed": 13,
    "account_age_days": null,
    "posts_per_day": null,
    "verified": false,
    "size_tier": "kol"
  },
  "engagement": {
    "status": "not_collected",
    "engagement_rate": null,
    "engagement_rate_basis": null,
    "posts_in_average": null,
    "avg_views_per_post": null,
    "peak_post_engagement_rate": null,
    "avg_interactions_per_post": null,
    "best_post_interactions": null,
    "measurement_source": null,
    "measurement_formula": null,
    "comparable_pool": null,
    "status_note": "Engagement has not been collected for this creator yet. This is a gap in our collection, NOT a statement that the creator has no engagement. Follower count is known, so it is measurable.",
    "unit_note": "engagement_rate and peak_post_engagement_rate are ratios (0-1); avg_interactions_per_post and best_post_interactions are absolute counts. Read status before reading any number: a null rate has several different causes and status says which one applies here."
  },
  "content": {
    "bio": "Learn how to build exciting games like platformers, scrollers, space shooters, physics games, pathfinding systems, tile grids, and ...",
    "topics": [
      "Scratch game tutorials",
      "Game mechanics implementation",
      "Coding fixes and debugging",
      "2D game basics",
      "Scratch tips and tricks"
    ],
    "topics_en": [
      "Scratch game tutorials",
      "Game mechanics implementation",
      "Coding fixes and debugging",
      "2D game basics",
      "Scratch tips and tricks"
    ],
    "topics_zh": [
      "Scratch游戏教程",
      "游戏机制实现",
      "代码修复与调试",
      "2D游戏基础",
      "Scratch技巧与窍门"
    ],
    "category": "gaming",
    "category_label": "Gaming",
    "subcategory": "indie",
    "subcategory_label": "Indie games",
    "category_confidence": 0.85,
    "category_source": "derived_from_recent_content"
  },
  "audience": {
    "status": "present",
    "status_note": null,
    "description": "Kids, students and beginner hobbyists learning to code their own games in Scratch, transitioning from gamers to creators",
    "roles": [
      "dev"
    ],
    "seniority": "learner",
    "pain_points": [
      "Struggling to implement core game mechanics like jumping, controls and animations in Scratch",
      "Debugging technical issues such as floating point errors",
      "Building complete playable games from scratch without guidance",
      "Understanding advanced concepts like rotation and trails in a beginner-friendly way"
    ],
    "posts_analysed": 10,
    "confidence": 0.4
  },
  "commercial": {
    "audience_buyer_fit": 0.9,
    "promotion_intent": 0.8,
    "open_to_collaboration": false,
    "contact": null,
    "contact_note": "Koinon does not publish creator contact details."
  },
  "quality": {
    "authenticity_score": 58,
    "authenticity_basis": "profile_shape_only",
    "authenticity_method": "Profile-shape heuristic from a single snapshot (follower count, following ratio, account age, posting volume, verification), reduced for engagement red flags where post engagement was collected. Where only a follower count is available the score saturates at 58.",
    "authenticity_comparable_across_platforms": false,
    "credibility_score": 58,
    "credibility_note": null,
    "flagged_for_review": false,
    "flag_reasons": [],
    "anomaly_flags": [],
    "koinon_bd_grade": {
      "value": "B",
      "scale": [
        "A",
        "B",
        "C",
        "quarantine",
        null
      ],
      "value_meanings": {
        "A": "Strong fit for Koinon partner outreach.",
        "B": "Moderate fit.",
        "C": "Weak fit, or never scored.",
        "quarantine": "Flagged for manual review. Excluded from Koinon published statistics, but creator search still RETURNS these profiles unless you pass exclude_anomalous:true — check quality.flagged_for_review.",
        "null": "Never scored."
      },
      "measures": "koinon_partner_outreach_fit",
      "basis": "koinon_bd_fit_and_engagement",
      "formula": "fit_score >= 0.6 AND authenticity >= 60 => A; fit_score >= 0.4 AND authenticity >= 45 => B; else C. authenticity < 30 or a promotional-pattern flag => quarantine.",
      "comparable_across_platforms": false,
      "interpretation": "NOT a quality score and NOT fit for your campaign — it grades Koinon own partner-outreach interest in gaming, e-commerce and software. A \"C\" usually means \"outside those industries\" or \"not yet scored\".",
      "explained_at": "https://koinonlink.com/for-ai#koinon_bd_grade"
    },
    "interpretation": "Signals for triage, not verdicts. A flag means the profile is worth a manual check."
  },
  "evidence": [
    {
      "evidence_id": "youtube_griffpatch#761d2077",
      "type": "creator_content",
      "excerpt": "9 Year Old DESTROYED Us (We're Shutting Down Her 'School') #shorts",
      "source_url": "https://www.youtube.com/@griffpatch",
      "source_url_note": "Koinon retains one profile-level source URL, not a per-post URL for each excerpt."
    },
    {
      "evidence_id": "youtube_griffpatch#243e9ea1",
      "type": "creator_content",
      "excerpt": "Build a Scratch Adventure This Summer with Griffpatch 🌙",
      "source_url": null,
      "source_url_note": "Koinon retains one profile-level source URL, not a per-post URL for each excerpt."
    },
    {
      "evidence_id": "youtube_griffpatch#9abf81a0",
      "type": "creator_content",
      "excerpt": "Clone vs Stamp: Which Trail Method is Better? #scratch #coding #tutorial",
      "source_url": null,
      "source_url_note": "Koinon retains one profile-level source URL, not a per-post URL for each excerpt."
    },
    {
      "evidence_id": "youtube_griffpatch#088da81d",
      "type": "creator_content",
      "excerpt": "Build health bars in scratch",
      "source_url": null,
      "source_url_note": "Koinon retains one profile-level source URL, not a per-post URL for each excerpt."
    },
    {
      "evidence_id": "youtube_griffpatch#6e5fe2e7",
      "type": "creator_content",
      "excerpt": "How Pro Game Devs Handle Mobile Controls #tutorial #scratch",
      "source_url": null,
      "source_url_note": "Koinon retains one profile-level source URL, not a per-post URL for each excerpt."
    },
    {
      "evidence_id": "youtube_griffpatch#58b8d544",
      "type": "creator_content",
      "excerpt": "Basic Jumping in Scratch: Up & Down Animation!",
      "source_url": null,
      "source_url_note": "Koinon retains one profile-level source URL, not a per-post URL for each excerpt."
    },
    {
      "evidence_id": "youtube_griffpatch#b0ee864f",
      "type": "creator_content",
      "excerpt": "2D Rotation in Scratch explained simply!",
      "source_url": null,
      "source_url_note": "Koinon retains one profile-level source URL, not a per-post URL for each excerpt."
    },
    {
      "evidence_id": "youtube_griffpatch#7aafc0af",
      "type": "creator_content",
      "excerpt": "Fix Floating Point Errors in Scratch Games!",
      "source_url": null,
      "source_url_note": "Koinon retains one profile-level source URL, not a per-post URL for each excerpt."
    }
  ],
  "provenance": [
    {
      "field": "audience.description",
      "source_type": "ai_inferred",
      "confidence": 0.4,
      "freshness_days": 31,
      "method": "llm_persona_from_recent_content",
      "note_ref": "llm_persona_from_recent_content"
    },
    {
      "field": "audience.roles",
      "source_type": "ai_inferred",
      "confidence": 0.4,
      "freshness_days": 31,
      "method": "llm_persona_from_recent_content",
      "note_ref": "llm_persona_from_recent_content"
    },
    {
      "field": "audience.seniority",
      "source_type": "ai_inferred",
      "confidence": 0.4,
      "freshness_days": 31,
      "method": "llm_persona_from_recent_content",
      "note_ref": "llm_persona_from_recent_content"
    },
    {
      "field": "commercial.audience_buyer_fit",
      "source_type": "ai_inferred",
      "confidence": 0.6,
      "freshness_days": 0,
      "method": "llm_scorer",
      "note": "Relative signal within Koinon indexing, not a market-wide score."
    },
    {
      "field": "commercial.promotion_intent",
      "source_type": "ai_inferred",
      "confidence": 0.6,
      "freshness_days": 0,
      "method": "llm_scorer"
    },
    {
      "field": "quality.anomaly_flags",
      "source_type": "heuristic",
      "confidence": 0.5,
      "freshness_days": 4,
      "method": "profile_snapshot_and_engagement_ratio_heuristic",
      "note": "Means \"worth a manual check\", NOT confirmed fraud. Flags can be wrong and are not a verdict about the person."
    },
    {
      "field": "quality.authenticity_score",
      "source_type": "heuristic",
      "confidence": 0.25,
      "freshness_days": 0,
      "method": "Profile-shape heuristic from a single snapshot (follower count, following ratio, account age, posting volume, verification), reduced for engagement red flags where post engagement was collected. Where only a follower count is available the score saturates at 58.",
      "note": "The input set differs by platform; do not compare this score across platforms."
    },
    {
      "field": "quality.koinon_bd_grade",
      "source_type": "ai_inferred",
      "confidence": 0.5,
      "freshness_days": 4,
      "method": "llm_partner_fit_classifier + fit_score >= 0.6 AND authenticity >= 60 => A; fit_score >= 0.4 AND authenticity >= 45 => B; else C. authenticity < 30 or a promotional-pattern flag => quarantine.",
      "note": "Koinon partner-outreach fit, not creator quality."
    },
    {
      "field": "reach.followers",
      "source_type": "observed",
      "confidence": 0.95,
      "freshness_days": 4,
      "method": "platform_profile"
    }
  ],
  "method_notes": {
    "llm_persona_from_recent_content": "Computed from posts read live at analysis time; those posts are NOT retained. The excerpts in evidence[] are separately collected profile content and are NOT the inputs to this inference. Do not cite them as its supporting evidence."
  },
  "freshness": {
    "profile_checked_days_ago": 4,
    "content_analysed_days_ago": 0,
    "audience_updated_days_ago": 31,
    "generated_at": "2026-09-03T16:20:06.792Z"
  },
  "retrieval": {
    "indexing_requests": 1,
    "user_triggered_requests": 0,
    "last_user_triggered_day": null,
    "note": "Being indexed in bulk is not the same as being retrieved to answer a question."
  },
  "relationships": {
    "platform_entity": "https://koinonlink.com/creators/youtube",
    "category_entity": "https://koinonlink.com/product-category/gaming"
  },
  "license": {
    "terms": "https://koinonlink.com/for-ai",
    "attribution": "Koinon Link",
    "claim_url": "https://koinonlink.com/claim?k=youtube_griffpatch",
    "removal_url": "https://koinonlink.com/claim?k=youtube_griffpatch"
  }
}