SPB Git forge

spb/crea-ka

Public

Créa·Ka — annuaire public cross-plateforme des créateurs de contenu québécois (crea-ka.com)

52commits 1branches 0releases
11.3 MBsize
maindefault branch
19 days agolast push
Python 73.6% HTML 13.2% TypeScript 6% JavaScript 4.5% CSS 1.7% Dockerfile 0.6%

History of creaka/normalize.py · clear filter

  1. Tue, Aug 18, 2026 2

    1. Vague 2 : balados-rss (RSS sans clé), Podcast Index (prêt — clés requises), abonnés X sans clé, bio-liens, plateformes spotify/discord/apple-podcasts
      …
      - balados-rss : flux RSS auto-déclarés (cap 150/passage, re-visite 7 j, fetch
        parallèle poli, repli regex) → épisodes réels, dernier épisode/dormant,
        pochette→avatar, description→bio, catégories→niches, <link>→site-web
        (portails partagés et domaines de plateformes exclus — anti-fusion §12.2)
      - podcastindex : connecteur complet API officielle, sauté proprement sans
        clés (SkipSource) ; PODCASTINDEX_API_KEY/SECRET dans .env.example
      - x-profil : abonnés/abonnements/badge X via le service public de syndication
        (widgets officiels) + repli page x.com ; fetch via curl (requests 429-é par
        empreinte TLS, constaté) ; followbutton mort et Facebook bloqué → documenté
      - bio-liens : liaison croisée conservatrice depuis les URLs complètes des
        bios déjà stockées (cross_link, cap 5/fiche, jamais de @handle textuel)
      - normalize/frontend : plateformes spotify, discord, apple-podcasts→podcast
        (fusion par collectionId) ; icônes simple-icons ; PLAT du SPA
      - sources.json : 4 nouvelles sources documentées ; tests vague 2 (35 verts)
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher committed 1 mo ago · 1 file +14 −1
    2. Correctifs audit : fix 500 threads, durées sync, twitch sauté proprement, onlyqueb RSC, avatars YouTube, balados enrichis, archivage §13
      …
      - web.py : connexion SQLite PAR THREAD (threading.local) — corrige le 500
        intermittent sur /api/stats (curseurs entrelacés sur connexion partagée)
      - db.py : sync_log.seconds/errors réels persistés ; log des comptes retirés
        dans _write_creator ; archive_missing() (§13 — non revu depuis 72 h →
        inactive, réversible au retour, opt-out intouchés)
      - ingest.py : durée+erreurs transmises à sync_source ; archivage en fin de
        passage complet ; SkipSource journalisé sans fausse alerte
      - twitch : clés absentes → SkipSource (« sauté : clés manquantes »), plus de
        run 0 ni d alerte « source bloquée »
      - onlyqueb : parseur du payload Next.js/RSC — displayName réel, bio+headline,
        categories→niches, mym/fansly/ofUrl→comptes, websiteUrl→compte site-web
      - normalize : plateformes mym + fansly (URL canoniques + détection)
      - dedup : le statut de l observation fraîche gagne (dormant/retour) ; un vrai
        nom public remplace un display_name pseudo-handle
      - youtube-recherche : avatar_url extrait du channelRenderer (meilleure rés.)
      - balados-itunes : feed_url/artist_id/last_episode dans le doc, genres[]
        complets → niches, dormant >12 mois → status inactive (§13)
      - wikidata-qc : échec SPARQL journalisé + compté dans sync_log.errors
      - frontend : libellés MYM/Fansly
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher committed 1 mo ago · 1 file +7 −3
  2. Mon, Aug 17, 2026 1

    1. Simon-Pierre Boucher committed 1 mo ago · 1 file +362