SPB Git

spb/job-ka

Public
History of data Clear filter
page 1
  1. Sun, Sep 13, 2026 1

    1. Simon-Pierre Boucher · 1 file +1 −1
  2. Sat, Sep 12, 2026 2

  3. Fri, Sep 11, 2026 2

    1. [ka6] fix connecteur findevcanada: volume 0 légitime confirmé en direct — l'employeur a dépublié ses 2 dernières parutions QC le 2026-09-11 (Principal, Financial Institutions FR+EN du 09-03 et Principal, Business Integrity Officer FR+EN du 09-04 : /j/<code> → /oops, tenant-scoped → ?not_found=true, API détail 404) entre 11h31 et 12h41 EDT. Le tenant Workable findevcanada reste le système ACTUEL et vivant (widget v1 200 {name: FinDev Canada, jobs: []} ; API v3 de la SPA total=0 — concordance parfaite) : la migration est dans l'AUTRE sens que ce que suggère la page carrières findevcanada.ca, dont le lien « View our job openings » → edc.taleo.net/careersection/findevcanada_corporate est un VESTIGE pré-migration (instantané Wayback 2026-05-30 : seul le lien Taleo existait, les boutons Workable ont été ajoutés depuis ; la zone edc.taleo.net entière renvoie 503 Zone Maintenance Oracle, et EDC société mère publie elle-même sur apply.workable.com/export-development-canada — 57 lignes vérifiées, aucun poste FinDev). Aucune offre FinDev courante ailleurs (LinkedIn : mêmes parutions désormais fermées ; ecoworks : offre de juillet périmée, Toronto). Employeur ~150 personnes, médiane 4 (2 parutions × 2 langues) : zéro ouverture ponctuelle est normal. Le connecteur est INTACT et fonctionnel — aucune modification du code (plateforme workable et tenant corrects). Correction au passage d'un artefact de génération dans data/sources.json : url vide → https://www.findevcanada.ca (la fiche affichait « Site : []() »). Sync isolé rejoué : found=0 en 0,1 s, statut ok. 101 tests pytest verts. pm2 restart job-ka-sync OK, site 200.
      …
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 1 file +1 −1
    2. [ka6] fix connecteur derumarketcatering: retrait définitif de la source (précédent projevia 7b871e8) — double condamnation confirmée en direct le 2026-09-11 : (1) le compte JazzHR du tenant est désactivé de façon permanente (page 200 « Inactive Career Page / this account is no longer active », détectée explicitement par jazzhr._fetch_list depuis la mission du 2026-09-04 → RuntimeError sans retry, 60 échecs consécutifs) ; (2) l'employeur était un faux positif de génération : Deru Market + Catering est un restaurant de Kirkland, État de WASHINGTON (derumarket.com, ZipRecruiter « Kirkland, WA »), pas Kirkland QC — sa seule offre jamais ingérée (FOH Staff, Kirkland WA) était américaine et est inactive en base depuis le fix is_quebec_location f4038e4. Deux missions ka6 (2026-08-26, 2026-09-04) avaient déjà conclu site_source_mort sans retirer la source : la supervision la resynchronisait donc en boucle (statut broken). Retrait complet selon le pattern maison : suppression de jobka/connectors/derumarketcatering.py (registre auto-découvrant → 1105 connecteurs), de l'entrée data/sources.json (1107 sources, employeurs_directs 1048→1047, page Sources vérifiée sans Deru) et de la fiche docs/connecteurs/derumarketcatering.md (INDEX/ats-jazzhr seront nettoyés à la prochaine régénération gen_connector_docs). Données en base conservées (offre déjà active=0, historique sync_log intact). Aucune modification de la plateforme jazzhr : non-régression tenant cliniqued found=1 ok. run.py sync derumarketcatering → « connecteur inconnu » (comportement attendu). 101 tests pytest verts. pm2 restart job-ka-sync OK, site 200.
      …
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 1 file +2 −12
  4. Mon, Aug 31, 2026 1

  5. Thu, Aug 27, 2026 2

  6. Tue, Aug 25, 2026 3

    1. Vague E — 3 nouvelles familles ATS (JazzHR, Teamtailor, Zoho Recruit) + 60 connecteurs, ~547 offres QC
      …
      - Nouvelles classes de plateforme : jazzhr.py (liste /apply/ + JSON-LD),
        teamtailor.py (sitemap + JSON-LD), zoho_recruit.py (flux RSS public) —
        filtre QC au détail avec report si budget épuisé (doctrine taleo_tbe/adp).
      - serper_scout.py : 5 nouveaux motifs (jazzhr, teamtailor, zohorecruit,
        talentnest, njoyn avec CLID/CL/hôte) + CLID dans le dédoublonnage.
      - 60 connecteurs : 31 JazzHR (Optel 13, Playground 21, Ultium CAM,
        Altitude Aérospatiale, FortNine, XTL 21, Valnet 22…), 17 Zoho Recruit
        (Mallette Saguenay 26, DRB 22, dentago 20, Carnaval de Québec, FÉRIQUE,
        Altitude Sports, Excavations Lafontaine…), 9 Teamtailor (Norda Stelo 50,
        Workin Group 34, Humanise 13, CAM Mécanique, Synertek…), 3 Njoyn
        (IR-CUSM 37, RTL 17, Groupe Master 17).
      - njoyn.py : correctif _keep — certains habillages mettent la date dans la
        colonne pays (Groupe Master 0 -> 17) ; n'exclure que les pays reconnus.
      - sources.json : 1 108 sources, 23 familles ATS ; docs/connecteurs
        régénérées (1 133 fiches) ; rapport docs/prospection-vagueE.md
        (écartés motivés + reliquats vague F : TalentNest, ENPQ/APCHQ, CUSM).
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 1 file +606 −3
    2. Vague D implémentée — 75 nouveaux connecteurs (968 -> 1044 employeurs), ~768 offres QC
      …
      - 55 connecteurs générés depuis feeds-vagueD.json (gen_connectors), tous
        synchronisés sans échec (333 offres). Sandvik re-pointé sur le babillard
        public sandvik-jobs.
      - 20 connecteurs manuels sur familles existantes (435 offres) : ADP ×12
        (Nordik, Uniboard, Richelieu, UV Assurance, Strathmore, H2O, Cook It,
        Canadian Royalties, Niobec, Nemaska, Abritek, Triple Boris), Alstom
        SuccessFactors (227 offres, La Pocatière/MTL), Kiewit-Ganotec (50),
        Groupe Bellemare Njoyn (27), Ville de Mirabel, Sel Windsor, Global Excel,
        Graymont TBE, IAMGOLD Taleo.
      - Correctifs de familles : adp.py FORCE_CITY (mono-sites QC sans
        requisitionLocation) ; taleo_tbe.py secours og:title variante
        « - Canada - QC - Ville » (Graymont 0 -> 4) ; successfactors.py slug
        « -queb » final + garde-fou is_quebec_location contre les faux « QC »
        (quality control, 3 offres US interceptées ; Kiewit 3 -> 50).
      - 9 pistes écartées avec raison (babillards US/vides, iCIMS SPA) —
        détail dans docs/prospection-vagueD.md.
      - sources.json : 1 048 sources ; docs/connecteurs régénérées (1 070 fiches).
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 2 files +13,066 −12,256
    3. Prospection vague D — 55 nouveaux flux ATS confirmés + 34 pistes autres ATS
      …
      Scout Serper (1 920 requêtes, 96 termes inédits : 61 villes/régions + 35 métiers)
      et découverte sectorielle (910 employeurs QC visités par detect_ats) :
      - data/feeds-vagueD.json : 55 flux confirmés ≥1 offre QC (workday 27,
        smartrecruiters 14, dayforce 6, bamboohr 3, greenhouse 2, ashby/lever/workable 1)
        — dont Loblaw/Provigo, Best Buy Canada, AMF, Chanel, Carrier, Equisoft,
        Groupe Meloche, Téléfilm, Le Massif, Scandinave Spa
      - data/detected-other-ats.jsonl : +34 pistes sur familles existantes
        (adp 17, ukg 5, successfactors 4, taleo 3, njoyn 3, icims 2) — filon minier
        Abitibi/Nord (IAMGOLD, Hecla, Wesdome, Nemaska, Niobec…), Alstom La Pocatière,
        Richelieu, Logistec, villes de Mirabel/Terrebonne
      - rapport complet : docs/prospection-vagueD.md (méthode, tables, suites)
      Prochaine étape sur validation : gen_connectors.py data/feeds-vagueD.json
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 2 files +685
  7. Sun, Aug 23, 2026 1

    1. Vague C — +620 connecteurs employeurs directs (350 -> 968)
      …
      Campagne de découverte massive en 3 angles : éclaireur Serper élargi
      (60 termes x 10 ATS x 3 pages), reprise des 266 flux confirmés le 22-08
      jamais intégrés, et sondage par nom de 182 grands employeurs QC sur 10 ATS.
      Fusion/nettoyage (scripts/merge_confirmed.py : dédoublonnage multi-vagues,
      filtre des faux positifs Québec hors province, nettoyage des noms issus des
      titres Google, exclusion des babillards de démo) puis secteurs attribués par
      lots (scripts/classify_sectors.py).
      
      - Workday +148, SmartRecruiters +118, Dayforce +96, Greenhouse +93,
        Breezy +50, Workable +40, Lever +32, Ashby +25, Recruitee +12, BambooHR +3
      - SuccessFactors +4 vérifiés main : TELUS, Énergir, VIA Rail, Canada Vie
      - prises notables : Thales, Fiera Capital, Fednav, Wolseley, Cominar, Ludia,
        Granit Design, Vortex Structures Aquatiques, Warner Bros. Discovery
      - 973 sources au registre ; docs/connecteurs régénérées (995 fiches) ;
        docs/CONFORMITE.md : section Vague C + écartés (Air Canada -> Phenom, TÉLUQ,
        Valero, faux QC)
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 3 files +16,492 −2
  8. Sat, Aug 22, 2026 1

    1. Vague B — 110 nouvelles sources (26 Dayforce nouvelle famille + 84 sur familles existantes)
      …
      - Nouvelle famille Dayforce HCM (jobs.dayforcehcm.com, API JSON du frontal Next.js,
        csrf anonyme + recherche paginée, détail PayClass/PayType avec cache et budget) :
        26 employeurs dont Groupe Maurice, Groupe CH, La Vie en Rose, Eidos-Montréal,
        Air Canada Rouge, Port de Québec, Soprema, BPA…
      - Ajouts sur familles existantes : Workday +17 (Simons, Cineplex, TJX, FedEx, Abbott…),
        Greenhouse +17 (Coveo, KRAFTON, Lyft, AutoTrader…), SmartRecruiters +13,
        Workable +11, Breezy +8, Recruitee +7, Lever +6, Ashby +5.
      - sources.json : 244 → 354 sources ; docs/connecteurs régénérées (376 fiches).
      - docs/CONFORMITE.md : bases d'accès vérifiées 2026-08-22, 20+ sources écartées
        avec raisons (agences, agrégateurs, babillards vides, faux positifs français).
      - Sync validé : 110/110 sources OK, 2 102 offres ajoutées (total BD 25 280).
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 2 files +5,791 −3,088
  9. Wed, Aug 19, 2026 2

  10. Tue, Aug 18, 2026 3

    1. Documentation connecteurs (standard Groupe-KA) + registre de conformité
      …
      - scripts/gen_connector_docs.py : générateur rejouable (ast + sources.json +
        BD live en lecture seule + sync_log + git) -> docs/connecteurs/ :
        INDEX.md + 17 fiches plateformes ATS (mécanique, endpoints, budgets,
        tableau des tenants) + 217 fiches employeurs + 3 fiches portails +
        fiche dépôt direct (239 fichiers, sections fixes standardisées)
      - docs/CONFORMITE.md : registre de conformité par famille (base d accès,
        attribution/lien candidature vérifié -> offre originale, zéro donnée
        personnelle de candidat, Québec Emploi écarté clicSÉQUR, vérifié 2026-08-18)
      - README : section Connecteurs (17 ATS, 217 employeurs directs, 3 portails,
        badge Offre directe, dépôt direct), structure/env/API à jour
      - data/sources.json : _meta enrichi (compteurs, liste ATS, pointeurs docs)
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 1 file +27 −1
    2. 8 nouveaux ATS (Taleo, Njoyn, UltiPro, iCIMS, SuccessFactors, ADP WFN, Digital Recruiters, Workland) + 23 employeurs publics/parapublics et grands employeurs QC
      …
      - Secteur public : Santé Québec (emplois.sante.quebec), Emplois Santé Montréal
        (njoyn), CIUSSS de l Est-de-l Île-de-Montréal (taleo), CSSDM (workland),
        villes de Gatineau et Terrebonne, STL, RTC (njoyn via Scrapfly anti-Radware)
      - Grands employeurs : Bombardier, Cascades, Domtar (SuccessFactors sitemap
        RSS/urlset + microdonnées), Agnico Eagle, Bell Textron, Bayshore (Taleo REST
        + repli anglophone), Messer Canada (UltiPro), Lassonde, Mitsubishi HC
        Capital, MSI (ADP WFN + repli en_US), CAPREIT, McCarthy Tétrault, Omni,
        EDF Renouvelables (iCIMS + JSON-LD)
      - gen_connectors : EXTRA_ATTRS multi-attributs pour les nouveaux ATS
      - jobka/connectors/_jsonld.py : extraction schema.org/JobPosting partagée
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 1 file +368
    3. Expansion ×: 59 nouveaux employeurs connectés via sondage massif d ATS + détection de pages carrières
      …
      - scripts/probe_ats.py : sonde 800+ slugs candidats sur les 9 ATS (timeout 6 s,
        throttle 0,3 s/domaine, 8 threads) ; confirmé = ≥1 offre ET ≥1 offre QC
        (is_quebec_location du projet). Découverte Workday sans page HTML (bloquée
        406) : cxs 422=tenant absent / 404=hôte bon, puis devinette du site.
      - scripts/detect_ats.py : visite 6 337 domaines d employeurs QC (accueil +
        /carrieres|/careers|/emplois|/jobs|/fr/carrieres + liens carrières),
        reconnaît l ATS par motifs URL/DOM ; ATS non supportés (taleo 11,
        successfactors 6, adp 5, icims 4, njoyn 4, ukg 3) consignés dans
        data/detected-other-ats.jsonl pour traitement séparé.
      - data/feeds-expansion.json : 59 flux vérifiés -> 59 connecteurs générés
        (workday 22, smartrecruiters 10, bamboohr 12, greenhouse 6, lever 4,
        workable 2, ashby 1, recruitee 1, breezy 0) dont Vidéotron, CDPQ, BDC,
        Beneva, Intact, PSP, Investissement Québec, Rio Tinto, Alcoa, Airbus,
        Walmart Canada, Canadian Tire, RCGT, Lightspeed, Behaviour, Cirque du
        Soleil, Gameloft, Canam, QSL, Promutuel, EXFO…
      - 2 107 offres actives ajoutées, 100 % villes QC ; faux positif retiré
        (genetec smartrecruiters, doublon faible de genetec_inc workable)
      - normalize.py : villes hors-QC supplémentaires (Las Vegas, Orlando…)
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 3 files +1,957 −1
  11. Mon, Aug 17, 2026 2

    1. Création massive : 135 connecteurs employeurs québécois sur 9 plateformes ATS
      …
      - 4 nouvelles classes de plateforme : Ashby (salaires structurés natifs),
        Workable (widget v1), Recruitee (offres complètes en liste), Breezy
        (verbose=true), BambooHR (détail + atsLocation)
      - Générateur en série scripts/gen_connectors.py (idempotent) + flux vérifiés
        data/feeds*.json — chaque flux validé par requête HTTP réelle avant génération
      - 124 connecteurs générés : Circle K, TD, BMO, CIBC, Autodesk, Manuvie, CIMA+,
        Transat, Reitmans, Rodeo FX, TEHORA, MaintainX, Hopper, Xsolla, dcbel,
        Robotiq, Toon Boom, BIXI, LG2, Framestore, NOVIPRO, etc.
      - Corrections : pagination Workday avec facette (total absent après la page 1),
        lieux « N Locations » résolus via la page détail, canonicalisation des villes,
        timeout iA à 90 s
      - 2 796 offres actives, 104 sources productives au moment du commit
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 4 files +1,794 −5
    2. Fondation Job·Ka : socle backend, 5 connecteurs pilotes, frontend, tests
      …
      - Schéma JobPosting + normalisation (salaires $/h↔$/an, dates ISO, villes
        canoniques, catégories) — 25 tests unitaires
      - Pipeline hérité de Lou·Ka : diff par content_hash, délai de grâce,
        anti-dérive, expiration sur date limite, dédup union-find, géocodage
        Nominatim + Adresses Québec avec cache
      - Plateformes ATS : Workday (facette Québec auto-découverte), Lever,
        Greenhouse, SmartRecruiters — connecteurs pilotes CAE, Desjardins, Poka,
        Mistplay, Ubisoft (442 offres QC)
      - API FastAPI (/api/jobs, geojson, facets, sources, stats, /health) +
        frontend React/Vite (liste, fiche, carte MapLibre, stats)
      - Fixtures HTTP enregistrées/rejouées hors ligne + hook pre-commit
        d'en-tête d'auteur (section 17)
      
      Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
      Simon-Pierre Boucher · 1 file +60
Menu

Theme