SPB Git

spb/qc-election

Public
page 1
  1. Sun, Aug 30, 2026 6

    1. Pouls social continu — actor Apify maison qc-social-pulse + sources ouvertes
      …
      - Actor Apify maison (compte gorgeous_thistle, id aI5AYtFfeDn3KAanf) : Instagram
        (comptes officiels vérifiés : coalition_avenir_quebec, partiquebecois, psppqc,
        liberalquebec, quebecsolidaire, ericduhaimequebec, frechette_christine),
        Facebook/TikTok best-effort, YouTube recherche + COMMENTAIRES PUBLICS (innertube)
        — proxy résidentiel CA, retries rotation IP, source dans apify/qc-social-pulse/
      - ingest/social_pulse.py : + Reddit r/Quebec (index Google/Serper), Mastodon,
        Lemmy.ca; stance dirigée + entité de contexte; pondération engagement
        1+ln(1+votes); anti-bruit (dédup URL+texte intra-lot et DB, longueur min,
        plafonds); indice enthousiasme par parti (Indicator); anomalies → événements
      - Table social_posts; API /api/social; section « Pouls social » (intelligence)
        + ligne au point du jour; pipeline à chaque cycle; poids NUL dans le forecast
      - Test réel : 185 posts (74 commentaires YouTube, 40 Mastodon, 71 Lemmy),
        enthousiasme CAQ 261/PCQ 206/PLQ 132 eng/post
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 15 files +1,119
    2. fix: import timedelta manquant (réconciliation radar)
      …
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 1 file +1 −2
    3. Frontend v3 « sharp » + ingestion de sondages parfaite (v2.1.1)
      …
      Frontend :
      - Refonte style.css : header compact blur, drawer hamburger mobile (verrou, backdrop,
        Escape), safe-areas, anti-zoom iOS 16px, cartes dégradées + hover lift, focus rings,
        skeleton shimmer, clamp typographique, prefers-reduced-motion
      - Charts : thème Inter, grille recessive, tooltips arrondis/blur, légendes cercle,
        dégradés sous courbe (areaGrad), traits lumineux (lineGlow), pastilles endLabel,
        barres à coins arrondis, ResizeObserver
      - Palette des partis validée (dataviz : CVD ΔE≥20, contraste ≥3:1, 2 surfaces)
      
      Sondages (« ça doit être parfait ») :
      - Parseur Wikipédia par SECTION (« Opinion polls »/« Campaign period » acceptées,
        ventilations langue/région et projections exclues) — plus de seuil de 20 rangées :
        la table de campagne entre dès sa 1re rangée
      - Mode de collecte par maison (design effects réels), vraie plage de terrain,
        indécis parsés
      - Upsert par (maison, fin de terrain) : n/MoE/chiffres révisés mis à jour, jamais
        dupliqués; purge des doublons hérités
      - Boucle de garantie radar→base (statut intégré/en attente), pipeline 3 h en campagne
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 12 files +1,856 −1,522
    4. v2.1.0 — signaux web avancés + « Le point du jour »
      …
      - Attention Wikipédia (pageviews partis+chefs, API Wikimedia) : parts 7 j/28 j,
        z-scores; détecteur de turbulence → variance de campagne ×≤1,45 (jamais la moyenne)
        [Smith & Gustafson POQ 2017]
      - Sondage synthétique LLM « silicon sampling » : 96 strates région×âge×genre×langue
        poststratifiées, ancré dans les manchettes réelles — EXPÉRIMENTAL, poids nul
        [arXiv:2411.01582; critique McKown-Dawson 2025]
      - Page quotidienne /aujourdhui : forecast daté, Δ vs veille, journal 24 h (sondages
        intégrés + radar), attention web avec sparklines, synthétique vs forecast
      - API : /api/today, /api/attention, /api/synthetic; admin POST /synthetic (amorçage)
      - forecast(drift_multiplier) : turbulence élargit l'incertitude seulement
      - 24 tests verts
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 15 files +2,291 −9
    5. v2.0.0 « Au-delà des sondages » — fondamentaux, partielles, médias, marchés, veille Firecrawl
      …
      - Prior de fondamentaux : satisfaction gouvernementale + vote précédent + usure,
        régression ridge 1998-2022 (LOO), blend à poids décroissant w(t) vers le scrutin
      - Votes réels des 4 partielles 2023-2025 injectés dans le filtre de Kalman
        (swing local rétréci ×0,6, n équiv. 350, erreur excédentaire ±3 pp)
      - Ajustement médias borné ±0,35 pp (sentiment 14 j, tanh + seuil de volume)
      - Ensemble 88/12 modèle/Polymarket sur P(plus de sièges), publié partout
      - Veille continue Firecrawl : radar de nouveaux sondages, extraction de la
        satisfaction (Léger 40 % trouvée live), presse élargie au-delà des RSS
      - Décomposition du forecast couche par couche à chaque run (API /api/beyond)
      - Nouvelle page /signaux + carte « D'où vient le forecast » sur l'accueil
      - Backtest 2022 comparatif (mae v2 vs sondages seuls)
      - Tables byelections / web_signals / indicators, endpoints admin (watch,
        indicator, byelection), 8 nouveaux tests (22/22 verts)
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 25 files +2,968 −1,358
  2. Thu, Aug 27, 2026 1

    1. QC Élection Forecast — plateforme de prévision électorale du Québec 2026
      …
      Modèle bayésien d'état latent (Kalman/alr) + house effects + Monte Carlo
      corrélé (erreurs systémique/régionale/locale), backtesting 2022 calibré,
      carte officielle DGEQ (127 circonscriptions), simulateur what-if, sentiment
      médiatique et marchés prédictifs en signaux auxiliaires. FastAPI + SQLite,
      frontend ECharts thèmes sombre/clair, responsive mobile. Déployée sur M2U64
      → https://www.qc-election.com (PM2 + ngrok).
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 59 files +7,265
Menu

Theme