SPB Git forge

spb/uqo-eval

Public
55commits 2branches 0releases
134.4 MBsize
maindefault branch
yesterdaylast push
TypeScript 90.1% JavaScript 3.2% Python 3.2% CSS 1.8% HTML 1.8%

History of src/lib/db.ts · clear filter

  1. Fri, Aug 28, 2026 1

  2. Tue, Aug 25, 2026 1

    1. fix(db): index NOCASE municipalité + index partiel ventes récentes — panne 2026-08-25
      …
      municipalityCenter/municipalityPercentile faisaient un SCAN des 3,7 M
      d'unités à chaque page d'estimation (COLLATE NOCASE ≠ idx_units_mun
      BINARY) ; recentSales scannait 750 k transactions avec tri temporaire.
      Sous trafic crawlers, better-sqlite3 (synchrone) gelait l'event loop :
      next-server à 100 % CPU pendant 10 h, port 8090 muet, site down.
      
      Index créés sur la base live + bootstrap CREATE INDEX IF NOT EXISTS
      dans getDb() pour survivre à une reconstruction de la base.
      Requêtes vérifiées : covering index, pages < 0,32 s sous 20 req
      parallèles (avant : plusieurs secondes chacune, empilement infini).
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher committed 1 mo ago · 1 file +12
  3. Sat, Aug 22, 2026 1

    1. Upgrade majeur apparence + information : contexte marché, fourchette visuelle, accueil enrichi
      …
      - Fiche estimation : barre de fourchette P10-P90 (marqueurs estimation + rôle),
        faits rapides ($/m², type, année, superficies), section « Le marché autour de
        cette propriété » (courbe d'indice base 100 + tendances 12 mois/2021, ventes
        réelles du secteur avec rayon adaptatif, position percentile dans la
        municipalité), comparables enrichis ($/m², superficie, année)
      - Moteur : MarketContext (estimator) — stats secteur depuis les candidats déjà
        chargés, percentile municipal (db), aussi servi par /api/estimate (manuel)
      - Accueil : pouls du marché (indice par type + variations), dernières ventes
        réelles captées (lien vers l'estimation), bande « comment ça marche »,
        compteur ventes/30 j — page en ISR 1 h
      - DB : index idx_tx_date sur transactions(date)
      - MetricViz : RangeBar, MarketIndexChart, PercentileBar, IndexSpark
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher committed 1 mo ago · 1 file +49
  4. Tue, Aug 11, 2026 1

    1. Recherche par carte — /carte (Leaflet+OSM) + API /api/nearby
      …
      - GET /api/nearby : unités dans une boîte englobante (idx_units_geo),
        tri par distance au centre (sinon l'index renvoie une bande sud),
        plafonds serveur ~2,2 km / 400 unités
      - Page /carte : fond OpenStreetMap, points encre/accent, popup éditoriale
        (adresse, type, estimation 2026 → /estimation/[id]), géolocalisation
        « Me localiser », garde de zoom, bilingue FR/EN, entrée nav « Carte »
      - Sert aussi l'app iOS native (onglet Carte MapKit, repo vrai-prix-ios)
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher committed 1 mo ago · 1 file +42
  5. Sun, Aug 9, 2026 1

    1. feat: Vrai-Prix — moteur d'évaluation immobilière transparent pour le Québec
      …
      Estimation hybride (modèle hédonique LightGBM + comparables ajustés),
      3,75 M de propriétés, fourchette P10-P90, indice de confiance A-D,
      rapports PDF vectoriels, parc immobilier, statistiques provinciales.
      Identité éditoriale sharp — accent rouge #ff5148.
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher committed 1 mo ago · 1 file +142