From ebba583c664718e04c36c8946cbaa076d7876558 Mon Sep 17 00:00:00 2001 From: Srilekha Date: Fri, 6 Nov 2026 11:55:25 +0530 Subject: [PATCH] feat(cohort): reconcile 500-artist telemetry, update avatars, and add drift detection - Decouple commercial CSPC sales columns from the 500 cohort telemetry feed - Synchronize 100% canonical platform URLs (YouTube, Spotify, Instagram) from hiffi_catalog.db to hiffi_multiplatform_500.csv - Enforce Tier-1 zero-imputation policy for Hak (@haknyc) with RFC 8259-compliant nulls - Reconcile and crop portrait avatar assets across cohort entities - Implement automated drift detector and velocity circuit breaker (drift_detector.py) --- app.py | 778 +++----- core/ranking_engine.py | 602 ++---- data/artist_avatars/ag_club_478.jpg | Bin 99190 -> 31431 bytes data/artist_avatars/atcq_148.jpg | Bin 0 -> 32357 bytes data/artist_avatars/az_rapper_257.jpg | Bin 0 -> 36954 bytes data/artist_avatars/bas_dreamville_250.jpg | Bin 0 -> 36337 bytes data/artist_avatars/blp_kosher_1917.jpg | Bin 12960 -> 29461 bytes data/artist_avatars/bob_ray_44.jpg | Bin 0 -> 25651 bytes .../certified_trapper_@certifiedtrapper.jpg | Bin 33961 -> 33427 bytes data/artist_avatars/che_noir_2771.jpg | Bin 9583 -> 26598 bytes data/artist_avatars/chloe_bailey_267.jpg | Bin 0 -> 38223 bytes data/artist_avatars/cypress_hill_151.jpg | Bin 0 -> 16888 bytes data/artist_avatars/cypress_hill_3448.jpg | Bin 153781 -> 0 bytes data/artist_avatars/de_la_soul_3875.jpg | Bin 29507 -> 32690 bytes data/artist_avatars/drake_2.jpg | Bin 0 -> 28806 bytes data/artist_avatars/earthgang_4890.jpg | Bin 39745 -> 39656 bytes data/artist_avatars/elucid_@elucid.jpg | Bin 49374 -> 16870 bytes data/artist_avatars/hak_@haknyc.jpg | Bin 30494 -> 25445 bytes data/artist_avatars/jt_citygirls_134.jpg | Bin 0 -> 24342 bytes data/artist_avatars/kanye_west_3.jpg | Bin 0 -> 40247 bytes data/artist_avatars/killah_priest_421.jpg | Bin 0 -> 34327 bytes data/artist_avatars/kirk_knight_402.jpg | Bin 0 -> 45496 bytes data/artist_avatars/kos_rapper_310.jpg | Bin 0 -> 23414 bytes data/artist_avatars/lucky_daye_233.jpg | Bin 0 -> 47641 bytes data/artist_avatars/mobb_deep_124.jpg | Bin 0 -> 30854 bytes data/artist_avatars/paris_texas_11839.jpg | Bin 10221 -> 26877 bytes .../pierre_bourne_@PierreBourne.jpg | Bin 31082 -> 28769 bytes data/artist_avatars/pitbull_12049.jpg | Bin 0 -> 54057 bytes data/artist_avatars/post_malone_12176.jpg | Bin 7183 -> 22748 bytes data/artist_avatars/project_pat_12312.jpg | Bin 277373 -> 31632 bytes data/artist_avatars/sada_baby_13222.jpg | Bin 11967 -> 37101 bytes .../spillage_village_earthgang_369.jpg | Bin 0 -> 33569 bytes .../spillage_village_jid_369.jpg | Bin 0 -> 25724 bytes data/artist_avatars/stanwill_476.jpg | Bin 0 -> 18137 bytes data/artist_avatars/suicideboys_106.jpg | Bin 0 -> 38999 bytes .../thaiboy_digital_@thaiboydigital.jpg | Bin 23250 -> 27921 bytes data/artist_avatars/that_mexican_ot_140.jpg | Bin 0 -> 23166 bytes data/artist_avatars/the_roots_15344.jpg | Bin 42446 -> 41384 bytes .../artist_avatars/the_underachievers_368.jpg | Bin 0 -> 20459 bytes data/artist_avatars/ti_harris_64.jpg | Bin 0 -> 21941 bytes data/artist_avatars/tom_macdonald_15587.jpg | Bin 9386 -> 24966 bytes .../tyler_the_creator_16009.jpg | Bin 12550 -> 32836 bytes .../victoria_monet_@VictoriaMonet.png | Bin 0 -> 608814 bytes data/artist_avatars/westside_boogie_16423.jpg | Bin 27870 -> 41065 bytes .../wheezy_@WheezyOuttaHere.jpg | Bin 11947 -> 32972 bytes data/artist_avatars/yg_100.jpg | Bin 0 -> 40979 bytes data/artist_avatars/zombie_juice_17164.jpg | Bin 10729 -> 30042 bytes data/hiffi_catalog.db | Bin 6619136 -> 6619136 bytes data/hiffi_multiplatform_500.csv | 1002 +++++----- data/preview_images.html | 1760 ++++++++--------- drift_detector.py | 106 + scripts/resolve_missing_platform_urls.py | 3 +- 52 files changed, 1920 insertions(+), 2331 deletions(-) create mode 100644 data/artist_avatars/atcq_148.jpg create mode 100644 data/artist_avatars/az_rapper_257.jpg create mode 100644 data/artist_avatars/bas_dreamville_250.jpg create mode 100644 data/artist_avatars/bob_ray_44.jpg create mode 100644 data/artist_avatars/chloe_bailey_267.jpg create mode 100644 data/artist_avatars/cypress_hill_151.jpg create mode 100644 data/artist_avatars/drake_2.jpg create mode 100644 data/artist_avatars/jt_citygirls_134.jpg create mode 100644 data/artist_avatars/kanye_west_3.jpg create mode 100644 data/artist_avatars/killah_priest_421.jpg create mode 100644 data/artist_avatars/kirk_knight_402.jpg create mode 100644 data/artist_avatars/kos_rapper_310.jpg create mode 100644 data/artist_avatars/lucky_daye_233.jpg create mode 100644 data/artist_avatars/mobb_deep_124.jpg create mode 100644 data/artist_avatars/pitbull_12049.jpg create mode 100644 data/artist_avatars/spillage_village_earthgang_369.jpg create mode 100644 data/artist_avatars/spillage_village_jid_369.jpg create mode 100644 data/artist_avatars/stanwill_476.jpg create mode 100644 data/artist_avatars/suicideboys_106.jpg create mode 100644 data/artist_avatars/that_mexican_ot_140.jpg create mode 100644 data/artist_avatars/the_underachievers_368.jpg create mode 100644 data/artist_avatars/ti_harris_64.jpg create mode 100644 data/artist_avatars/victoria_monet_@VictoriaMonet.png create mode 100644 data/artist_avatars/yg_100.jpg create mode 100644 drift_detector.py diff --git a/app.py b/app.py index e48564d..732708f 100644 --- a/app.py +++ b/app.py @@ -1,9 +1,9 @@ -""" +ο»Ώ""" app.py HIFFI Artist Intelligence - Multi-Platform Executive Dashboard -Dual-Engine Architecture: -1. HIFFI Hip-Hop 500: Multi-platform evidence tiers, YouTube/Spotify/IG telemetry, BVI, CPI engine. -2. Global Master Catalog (17k): Empirical registry verification (CSPC, RIAA, Last.fm) with ordinal tier ranking. +Dual-Engine Production Architecture: +1. HIFFI Hip-Hop 500: Pure Digital Telemetry (45% Spotify, 35% YouTube, 20% Instagram), Evidence Tiers, BVI. +2. Global Master Catalog (17k): Empirical registry verification (CSPC, RIAA, Last.fm). """ from pathlib import Path @@ -13,16 +13,6 @@ import plotly.express as px import plotly.graph_objects as go import streamlit as st -try: - from core.cpi_engine import CommercialPowerEngine -except ImportError: - CommercialPowerEngine = None - -try: - from exporters.excel_workbook import generate_executive_sales_workbook -except ImportError: - generate_executive_sales_workbook = None - try: from core.ranking_engine import HIFFIRankingEngine except ImportError: @@ -40,7 +30,6 @@ PATH_500 = Path("data/hiffi_multiplatform_500.csv") PATH_17K = Path("data/master_artists_intelligence_17k_final.csv") FALLBACK_PATH = Path("enriched_artists.csv") -# Global CSS Styling st.markdown( """