SPB Git

spb/job-ka

Public

[ka6] fix connecteur dentons_europe: faux positif « volume QC nul » (43e cas du pattern, 1re intervention) + RÉCUPÉRATION RÉELLE par portail frère inter-ATS — variante pwc 8d150eb sur un AUTRE ATS. Le connecteur dentons_europe (Workable, org dentons-europe) est SAIN : son unique offre QC (1454A1A702 « Global Value Pricing and Project Manager », Montréal, parue 2026-05-06) a été DÉPUBLIÉE entre 05:09 et 08:08 EDT (found 1 → 0, missed=1, puis removed=1 via le garde-fou 2-miss au sync rejoué), sync_log VERT en continu (ok=1). Marqueur Workable confirmé live : détail = 302 → /oops. Board re-vérifié : 200, 64 offres mondiales (Pologne/Italie/Tchéquie/Afrique), 0 lieu CA/QC (multi-lieux et 23 remote inspectés), recherche v3 Montreal/Quebec/Canada = 0 ; orgs frères Workable « dentons » et « dentons-global » = 200 mais 0 offre ; pas de migration (board vivant, c'est le portail EUROPE du cabinet). MAIS le vrai board des postes du bureau de Montréal est ailleurs : careers.dentons.com = SuccessFactors CSB (141 offres mondiales, sitemap urlset), 2 offres QC VIVANTES (paire FR/EN « Responsable, Comptes fournisseurs / Accounts Payable Lead », Montréal, multi-villes Ottawa/Toronto/Montréal) non couvertes par job-ka → NOUVEAU connecteur frère dentons (SuccessFactorsConnector, 4 lignes), volume employeur 0 → 2 (médiane historique 1.0). Ce tenant SF a exposé 3 angles morts GÉNÉRIQUES de la plateforme, corrigés dans successfactors.py : (1) description vide — le span itemprop=description enveloppe des span/p imbriqués et la capture non gourmande _ITEMPROP_RE s'arrêtait au premier </p> → extraction ÉQUILIBRÉE _balanced_itemprop (compte d'imbrication du même tag, ancien regex en repli) → descriptions 10 937/8 141 car.; (2) titre tronqué — slug terminé par la province abrégée seule (« …-Payable-Lead-Queb/ », marqueur Kiewit) alors que l'heuristique [:-3] suppose une queue -Prov-CP1-CP2 → le titre de la page détail (itemprop=title) fait désormais autorité; (3) offre multi-villes — meta addressLocality répétée (Ottawa/Toronto/Montreal, dernière gagnante) pouvait écraser la ville QC du slug par une ville hors QC → garde-fou is_quebec_location sur l'override. Bonus normalize.py : parse_date apprend le format java.util.Date.toString() (« Sun Oct 04 02:00:00 UTC 2026 », émis par les meta datePosted des sites SF CSB) qui rendait date_posted NULL — + test test_date_java_tostring. Artefact vague C comblé dans sources.json : url employeur vide → https://www.dentons.com (vérifié 200 via Scrapfly, « Dentons - Home », curl direct = 403 anti-bot) + entrée registre du nouveau connecteur dentons. Docstrings dentons_europe.py (chronologie) et dentons.py (généalogie du portail) écrites. Tests réels : sync dentons ×2 → found=2, ok=1, 2,9-3,0 s, fiches complètes (titres entiers, dates 2026-10-04, fr/en, GPS-ready) ; sync dentons_europe rejoué → found=0 stable, ok=1, 0,3 s (structurel tant que le board Europe ne republie pas de rôle Global à Montréal — même classe que strongtie a295929 / reworld c59448d) ; non-régression plateforme SF sur tenant vivant alstom : found=245 (médiane ~224), ok=1, 8,6 s. Fiches docs/connecteurs/ dentons.md (nouvelle) + dentons_europe.md + ats-successfactors.md + ats-workable.md + INDEX.md régénérées via scripts/gen_connector_docs.py (les 1129 autres fiches, dont seuls les instantanés horodatés changeaient, restaurées — hors périmètre). 107 tests pytest verts (106 + 1 nouveau). pm2 restart job-ka-sync OK, site local 200, www.job-ka.com 200.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Simon-Pierre Boucher committed (Oct 6, 2026) parent a295929 Browse files

11 changed files +421 −212

modified data/sources.json +14 −1
@@ -9920,10 +9920,23 @@
9920 "status": "actif", 9920 "status": "actif",
9921 "region": "Québec City, Laval, Lévis" 9921 "region": "Québec City, Laval, Lévis"
9922 }, 9922 },
9923+ {
9924+ "id": "dentons",
9925+ "name": "Dentons",
9926+ "url": "https://www.dentons.com",
9927+ "careers_url": "https://careers.dentons.com",
9928+ "sectors": [
9929+ "Juridique",
9930+ "Conseil"
9931+ ],
9932+ "connector": "successfactors",
9933+ "status": "actif",
9934+ "region": "Montréal"
9935+ },
9923 { 9936 {
9924 "id": "dentons_europe", 9937 "id": "dentons_europe",
9925 "name": "Dentons", 9938 "name": "Dentons",
9926− "url": "", 9939+ "url": "https://www.dentons.com",
9927 "careers_url": "https://apply.workable.com/dentons-europe", 9940 "careers_url": "https://apply.workable.com/dentons-europe",
9928 "sectors": [ 9941 "sectors": [
9929 "Juridique", 9942 "Juridique",
modified docs/connecteurs/INDEX.md +80 −79
@@ -5,16 +5,16 @@ Auteur : Simon-Pierre Boucher
5 Contact : contact@spboucher.ai 5 Contact : contact@spboucher.ai
6 Fichier : docs/connecteurs/INDEX.md 6 Fichier : docs/connecteurs/INDEX.md
7 Rôle : Index généré de la documentation des connecteurs (ATS, employeurs, portails, dépôt) 7 Rôle : Index généré de la documentation des connecteurs (ATS, employeurs, portails, dépôt)
8−Généré : 2026-10-06 02:02 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER, 8+Généré : 2026-10-06 10:15 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER,
9 relancer le script pour régénérer. 9 relancer le script pour régénérer.
10 ============================================================================= 10 =============================================================================
11 --> 11 -->
12 12
13 # Job·Ka — Connecteurs (index) 13 # Job·Ka — Connecteurs (index)
14 14
15−> Index généré le 2026-10-06 02:02 EDT par `scripts/gen_connector_docs.py` (rejouable). Croise `data/sources.json`, l'introspection de `jobka/connectors/*.py` et la base live `data/jobka.db`. 15+> Index généré le 2026-10-06 10:15 EDT par `scripts/gen_connector_docs.py` (rejouable). Croise `data/sources.json`, l'introspection de `jobka/connectors/*.py` et la base live `data/jobka.db`.
16 16
17−**1103 employeurs directs** connectés via **25 plateformes ATS** + **3 portails agrégateurs** + le canal de **dépôt direct** — **25944 offres actives** (23177 directes, 2767 portails ; 121 masquées comme doublons inter-sources, soit 25823 visibles). 1133 fiches. 17+**1104 employeurs directs** connectés via **25 plateformes ATS** + **3 portails agrégateurs** + le canal de **dépôt direct** — **25827 offres actives** (23058 directes, 2769 portails ; 122 masquées comme doublons inter-sources, soit 25705 visibles). 1134 fiches.
18 18
19 Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conserve son URL originale ; la candidature se fait chez l'employeur (badge « Offre directe » sur les sources directes). 19 Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conserve son URL originale ; la candidature se fait chez l'employeur (badge « Offre directe » sur les sources directes).
20 20
@@ -22,29 +22,29 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
22 22
23 | Plateforme | Employeurs | Actives | Salaire | GPS | 23 | Plateforme | Employeurs | Actives | Salaire | GPS |
24 |---|---|---|---|---| 24 |---|---|---|---|---|
25−| [`workday`](ats-workday.md) | 232 | 7648 | 45 % | 87 % | 25+| [`workday`](ats-workday.md) | 232 | 7626 | 45 % | 87 % |
26−| [`smartrecruiters`](ats-smartrecruiters.md) | 172 | 2978 | 17 % | 99 % | 26+| [`smartrecruiters`](ats-smartrecruiters.md) | 172 | 2977 | 17 % | 99 % |
27−| [`dayforce`](ats-dayforce.md) | 129 | 1892 | 9 % | 100 % | 27+| [`dayforce`](ats-dayforce.md) | 129 | 1887 | 9 % | 100 % |
28−| [`workable`](ats-workable.md) | 71 | 1852 | 18 % | 100 % | 28+| [`workable`](ats-workable.md) | 71 | 1850 | 18 % | 100 % |
29−| [`successfactors`](ats-successfactors.md) | 11 | 1745 | 18 % | 94 % | 29+| [`successfactors`](ats-successfactors.md) | 12 | 1663 | 19 % | 98 % |
30−| [`workland`](ats-workland.md) | 1 | 1190 | 34 % | 100 % | 30+| [`workland`](ats-workland.md) | 1 | 1198 | 34 % | 100 % |
31−| [`njoyn`](ats-njoyn.md) | 11 | 1187 | 68 % | 85 % | 31+| [`njoyn`](ats-njoyn.md) | 11 | 1175 | 67 % | 85 % |
32−| [`greenhouse`](ats-greenhouse.md) | 132 | 846 | 19 % | 100 % | 32+| [`greenhouse`](ats-greenhouse.md) | 132 | 847 | 19 % | 100 % |
33 | [`wpjobmanager`](ats-wpjobmanager.md) | 8 | 740 | 5 % | 100 % | 33 | [`wpjobmanager`](ats-wpjobmanager.md) | 8 | 740 | 5 % | 100 % |
34−| [`lever`](ats-lever.md) | 59 | 622 | 20 % | 96 % | 34+| [`lever`](ats-lever.md) | 59 | 620 | 20 % | 96 % |
35−| [`breezy`](ats-breezy.md) | 71 | 396 | 36 % | 95 % | 35+| [`breezy`](ats-breezy.md) | 71 | 400 | 37 % | 94 % |
36 | [`ashby`](ats-ashby.md) | 41 | 297 | 44 % | 60 % | 36 | [`ashby`](ats-ashby.md) | 41 | 297 | 44 % | 60 % |
37 | [`bamboohr`](ats-bamboohr.md) | 37 | 290 | 8 % | 100 % | 37 | [`bamboohr`](ats-bamboohr.md) | 37 | 290 | 8 % | 100 % |
38−| [`recruitee`](ats-recruitee.md) | 30 | 279 | 19 % | 96 % | 38+| [`recruitee`](ats-recruitee.md) | 30 | 277 | 19 % | 97 % |
39−| [`taleo_tbe`](ats-taleo_tbe.md) | 7 | 207 | 29 % | 56 % | 39+| [`taleo_tbe`](ats-taleo_tbe.md) | 7 | 206 | 28 % | 56 % |
40 | [`zoho_recruit`](ats-zoho_recruit.md) | 17 | 167 | 13 % | 89 % | 40 | [`zoho_recruit`](ats-zoho_recruit.md) | 17 | 167 | 13 % | 89 % |
41−| [`jazzhr`](ats-jazzhr.md) | 28 | 150 | 15 % | 93 % | 41+| [`jazzhr`](ats-jazzhr.md) | 28 | 151 | 15 % | 92 % |
42−| [`teamtailor`](ats-teamtailor.md) | 9 | 146 | 32 % | 95 % | 42+| [`teamtailor`](ats-teamtailor.md) | 9 | 147 | 31 % | 95 % |
43 | [`adp`](ats-adp.md) | 17 | 140 | 40 % | 95 % | 43 | [`adp`](ats-adp.md) | 17 | 140 | 40 % | 95 % |
44−| [`taleo`](ats-taleo.md) | 5 | 123 | 0 % | 100 % | 44+| [`taleo`](ats-taleo.md) | 5 | 121 | 0 % | 100 % |
45−| [`digitalrecruiters`](ats-digitalrecruiters.md) | 2 | 73 | 95 % | 59 % | 45+| [`digitalrecruiters`](ats-digitalrecruiters.md) | 2 | 70 | 94 % | 59 % |
46−| [`eightfold`](ats-eightfold.md) | 1 | 61 | 82 % | 100 % | 46+| [`ultipro`](ats-ultipro.md) | 4 | 62 | 50 % | 100 % |
47−| [`ultipro`](ats-ultipro.md) | 4 | 61 | 51 % | 100 % | 47+| [`eightfold`](ats-eightfold.md) | 1 | 60 | 82 % | 100 % |
48 | [`icims`](ats-icims.md) | 7 | 52 | 42 % | 81 % | 48 | [`icims`](ats-icims.md) | 7 | 52 | 42 % | 81 % |
49 | [`custom`](ats-custom.md) | 1 | 35 | 34 % | 89 % | 49 | [`custom`](ats-custom.md) | 1 | 35 | 34 % | 89 % |
50 50
@@ -52,116 +52,115 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
52 52
53 | Source | Actives | Salaire | Dernier sync | 53 | Source | Actives | Salaire | Dernier sync |
54 |---|---|---|---| 54 |---|---|---|---|
55−| [Espresso-Jobs](espresso_jobs.md) | 308 | 17 % | 2026-10-06 01:27 | 55+| [Espresso-Jobs](espresso_jobs.md) | 318 | 18 % | 2026-10-06 08:13 |
56−| [Guichet-Emplois (Canada)](guichet_emplois.md) | 563 | 100 % | 2026-10-06 01:38 | 56+| [Guichet-Emplois (Canada)](guichet_emplois.md) | 526 | 100 % | 2026-10-06 08:22 |
57−| [Jobillico](jobillico.md) | 1896 | 35 % | 2026-10-06 01:49 | 57+| [Jobillico](jobillico.md) | 1925 | 35 % | 2026-10-06 08:28 |
58 | [Dépôt direct employeurs](depot-direct.md) | 0 (0 en modération) | — | au fil de l'eau | 58 | [Dépôt direct employeurs](depot-direct.md) | 0 (0 en modération) | — | au fil de l'eau |
59 59
60 ## Employeurs directs (par volume d'offres actives) 60 ## Employeurs directs (par volume d'offres actives)
61 61
62 | Employeur | ATS | Actives | Salaire | GPS | Dernier sync OK | 62 | Employeur | ATS | Actives | Salaire | GPS | Dernier sync OK |
63 |---|---|---|---|---|---| 63 |---|---|---|---|---|---|
64−| [Réseau Atlas Workland (~80 employeurs QC : CSS, cégeps, Santé Québec, STQ, UQTR…)](atlas_workland.md) | [`workland`](ats-workland.md) | 1190 | 34 % | 100 % | ✅ | 64+| [Réseau Atlas Workland (~80 employeurs QC : CSS, cégeps, Santé Québec, STQ, UQTR…)](atlas_workland.md) | [`workland`](ats-workland.md) | 1198 | 34 % | 100 % | ✅ |
65 | [Couche-Tard / Circle K](circlek.md) | [`workday`](ats-workday.md) | 1029 | 68 % | 66 % | ✅ | 65 | [Couche-Tard / Circle K](circlek.md) | [`workday`](ats-workday.md) | 1029 | 68 % | 66 % | ✅ |
66−| [Walmart Canada](walmart.md) | [`workday`](ats-workday.md) | 1004 | 98 % | 91 % | ✅ | 66+| [Walmart Canada](walmart.md) | [`workday`](ats-workday.md) | 1015 | 98 % | 91 % | ✅ |
67−| [Bombardier](bombardier.md) | [`successfactors`](ats-successfactors.md) | 844 | 0 % | 100 % | ✅ | 67+| [Bombardier](bombardier.md) | [`successfactors`](ats-successfactors.md) | 846 | 0 % | 100 % | ✅ |
68 | [Solution SFT](solution_sft.md) | [`workable`](ats-workable.md) | 843 | 26 % | 100 % | ✅ | 68 | [Solution SFT](solution_sft.md) | [`workable`](ats-workable.md) | 843 | 26 % | 100 % | ✅ |
69−| [Santé Québec — Montréal](sante_montreal.md) | [`njoyn`](ats-njoyn.md) | 730 | 98 % | 98 % | ✅ | 69+| [Santé Québec — Montréal](sante_montreal.md) | [`njoyn`](ats-njoyn.md) | 721 | 98 % | 98 % | ✅ |
70−| [Université McGill](mcgill.md) | [`workday`](ats-workday.md) | 573 | 33 % | 99 % | ✅ | 70+| [Université McGill](mcgill.md) | [`workday`](ats-workday.md) | 560 | 31 % | 100 % | ✅ |
71−| [TEHORA](tehora.md) | [`workable`](ats-workable.md) | 410 | 0 % | 100 % | ✅ | 71+| [TEHORA](tehora.md) | [`workable`](ats-workable.md) | 409 | 0 % | 100 % | ✅ |
72−| [Globalhr](globalhr.md) | [`workday`](ats-workday.md) | 301 | 0 % | 83 % | ✅ | 72+| [Globalhr](globalhr.md) | [`workday`](ats-workday.md) | 299 | 0 % | 83 % | ✅ |
73 | [CGI](cgi.md) | [`njoyn`](ats-njoyn.md) | 294 | 0 % | 95 % | ✅ | 73 | [CGI](cgi.md) | [`njoyn`](ats-njoyn.md) | 294 | 0 % | 95 % | ✅ |
74−| [Mouvement Desjardins](desjardins.md) | [`workday`](ats-workday.md) | 282 | 1 % | 92 % | ✅ | 74+| [Mouvement Desjardins](desjardins.md) | [`workday`](ats-workday.md) | 278 | 1 % | 92 % | ✅ |
75−| [Go RH](gorh.md) | [`lever`](ats-lever.md) | 265 | 18 % | 98 % | ✅ | 75+| [Go RH](gorh.md) | [`lever`](ats-lever.md) | 263 | 18 % | 98 % | ✅ |
76 | [Slihrms](slihrms.md) | [`workday`](ats-workday.md) | 257 | 11 % | 94 % | ✅ | 76 | [Slihrms](slihrms.md) | [`workday`](ats-workday.md) | 257 | 11 % | 94 % | ✅ |
77−| [Alstom](alstom.md) | [`successfactors`](ats-successfactors.md) | 247 | 8 % | 100 % | ✅ |
78 | [Rechercher des](gianttiger.md) | [`workday`](ats-workday.md) | 246 | 1 % | 100 % | ✅ | 77 | [Rechercher des](gianttiger.md) | [`workday`](ats-workday.md) | 246 | 1 % | 100 % | ✅ |
78+| [Alstom](alstom.md) | [`successfactors`](ats-successfactors.md) | 245 | 8 % | 99 % | ✅ |
79 | [American Iron and Metal](americanironandmetal.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 226 | 24 % | 100 % | ✅ | 79 | [American Iron and Metal](americanironandmetal.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 226 | 24 % | 100 % | ✅ |
80−| [Hydro-Québec](hydroquebec.md) | [`successfactors`](ats-successfactors.md) | 224 | 47 % | 53 % | ✅ |
81 | [CIMA+](cima2.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 218 | 1 % | 100 % | ✅ | 80 | [CIMA+](cima2.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 218 | 1 % | 100 % | ✅ |
82−| [Airbus Canada](airbus.md) | [`workday`](ats-workday.md) | 198 | 4 % | 99 % | ✅ | 81+| [Airbus Canada](airbus.md) | [`workday`](ats-workday.md) | 199 | 4 % | 99 % | ✅ |
83−| [Groupe Banque TD](td.md) | [`workday`](ats-workday.md) | 171 | 96 % | 94 % | ✅ | 82+| [Groupe Banque TD](td.md) | [`workday`](ats-workday.md) | 168 | 96 % | 95 % | ✅ |
84−| [Reitmans](reitmanscanadalteltd.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 169 | 20 % | 100 % | ✅ |
85 | [Consignaction (AQRCB)](consignaction.md) | [`workday`](ats-workday.md) | 167 | 84 % | 100 % | ✅ | 83 | [Consignaction (AQRCB)](consignaction.md) | [`workday`](ats-workday.md) | 167 | 84 % | 100 % | ✅ |
86 | [Sodexo Canada](sodexocanadaltd.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 166 | 84 % | 99 % | ✅ | 84 | [Sodexo Canada](sodexocanadaltd.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 166 | 84 % | 99 % | ✅ |
85+| [Reitmans](reitmanscanadalteltd.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 165 | 20 % | 100 % | ✅ |
87 | [CISSS de Laval](cisss_laval.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 164 | 1 % | 100 % | ✅ | 86 | [CISSS de Laval](cisss_laval.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 164 | 1 % | 100 % | ✅ |
88 | [La Vie en Rose](lavieenrose.md) | [`dayforce`](ats-dayforce.md) | 158 | 3 % | 100 % | ✅ | 87 | [La Vie en Rose](lavieenrose.md) | [`dayforce`](ats-dayforce.md) | 158 | 3 % | 100 % | ✅ |
89 | [Ubisoft](ubisoft.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 152 | 0 % | 100 % | ✅ | 88 | [Ubisoft](ubisoft.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 152 | 0 % | 100 % | ✅ |
90 | [Le Groupe Maurice](groupemaurice.md) | [`dayforce`](ats-dayforce.md) | 150 | 0 % | 100 % | ✅ | 89 | [Le Groupe Maurice](groupemaurice.md) | [`dayforce`](ats-dayforce.md) | 150 | 0 % | 100 % | ✅ |
91 | [Vetstrategy](vetstrategy.md) | [`dayforce`](ats-dayforce.md) | 148 | 4 % | 100 % | ✅ | 90 | [Vetstrategy](vetstrategy.md) | [`dayforce`](ats-dayforce.md) | 148 | 4 % | 100 % | ✅ |
92−| [TJX Canada (Winners, HomeSense, Marshalls)](tjx.md) | [`workday`](ats-workday.md) | 140 | 99 % | 100 % | ✅ | 91+| [Hydro-Québec](hydroquebec.md) | [`successfactors`](ats-successfactors.md) | 142 | 75 % | 85 % | ✅ |
93 | [CISSS de l'Abitibi-Témiscamingue](cisss_abitibi.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 139 | 0 % | 100 % | ✅ | 92 | [CISSS de l'Abitibi-Témiscamingue](cisss_abitibi.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 139 | 0 % | 100 % | ✅ |
93+| [TJX Canada (Winners, HomeSense, Marshalls)](tjx.md) | [`workday`](ats-workday.md) | 138 | 99 % | 100 % | ✅ |
94 | [Groupe Helios](groupehelios.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 123 | 1 % | 100 % | ✅ | 94 | [Groupe Helios](groupehelios.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 123 | 1 % | 100 % | ✅ |
95−| [Intact Corporation financière](intactfc.md) | [`workday`](ats-workday.md) | 119 | 0 % | 78 % | ✅ | 95+| [Intact Corporation financière](intactfc.md) | [`workday`](ats-workday.md) | 118 | 0 % | 78 % | ✅ |
96 | [Artelia Canada](artelia.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 116 | 0 % | 100 % | ✅ | 96 | [Artelia Canada](artelia.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 116 | 0 % | 100 % | ✅ |
97 | [Deloitte Canada](deloitte.md) | [`successfactors`](ats-successfactors.md) | 115 | 98 % | 100 % | ✅ | 97 | [Deloitte Canada](deloitte.md) | [`successfactors`](ats-successfactors.md) | 115 | 98 % | 100 % | ✅ |
98 | [Vidéotron](videotron.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 108 | 6 % | 100 % | ✅ | 98 | [Vidéotron](videotron.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 108 | 6 % | 100 % | ✅ |
99 | [CISSS des Laurentides](cisss_laurentides.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 105 | 2 % | 100 % | ✅ | 99 | [CISSS des Laurentides](cisss_laurentides.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 105 | 2 % | 100 % | ✅ |
100 | [CISSS de Chaudière-Appalaches](cisss_chaudiere_appalaches.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 100 | 5 % | 100 % | ✅ | 100 | [CISSS de Chaudière-Appalaches](cisss_chaudiere_appalaches.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 100 | 5 % | 100 % | ✅ |
101−| [Sépaq](sepaq.md) | [`taleo_tbe`](ats-taleo_tbe.md) | 99 | 55 % | 9 % | ✅ | 101+| [Sépaq](sepaq.md) | [`taleo_tbe`](ats-taleo_tbe.md) | 98 | 54 % | 9 % | ✅ |
102 | [Dentalcorp](dentalcorp.md) | [`workday`](ats-workday.md) | 96 | 17 % | 100 % | ✅ | 102 | [Dentalcorp](dentalcorp.md) | [`workday`](ats-workday.md) | 96 | 17 % | 100 % | ✅ |
103 | [Genetec](genetec_inc.md) | [`workable`](ats-workable.md) | 96 | 0 % | 100 % | ✅ | 103 | [Genetec](genetec_inc.md) | [`workable`](ats-workable.md) | 96 | 0 % | 100 % | ✅ |
104 | [Cascades](cascades.md) | [`successfactors`](ats-successfactors.md) | 93 | 75 % | 100 % | ✅ | 104 | [Cascades](cascades.md) | [`successfactors`](ats-successfactors.md) | 93 | 75 % | 100 % | ✅ |
105−| [BMO Groupe financier](bmo.md) | [`workday`](ats-workday.md) | 90 | 90 % | 83 % | ✅ | 105+| [BMO Groupe financier](bmo.md) | [`workday`](ats-workday.md) | 90 | 90 % | 82 % | ✅ |
106 | [CISSS de l'Outaouais](cisss_outaouais.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 87 | 26 % | 100 % | ✅ | 106 | [CISSS de l'Outaouais](cisss_outaouais.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 87 | 26 % | 100 % | ✅ |
107 | [Linen Chest](linenchest.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 87 | 8 % | 100 % | ✅ | 107 | [Linen Chest](linenchest.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 87 | 8 % | 100 % | ✅ |
108 | [HIKINEX](recruiting.md) | [`breezy`](ats-breezy.md) | 86 | 0 % | 100 % | ✅ | 108 | [HIKINEX](recruiting.md) | [`breezy`](ats-breezy.md) | 86 | 0 % | 100 % | ✅ |
109 | [UAP Inc.](uapinc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 86 | 45 % | 98 % | ✅ | 109 | [UAP Inc.](uapinc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 86 | 45 % | 98 % | ✅ |
110+| [Bulkbarn](bulkbarn.md) | [`dayforce`](ats-dayforce.md) | 83 | 0 % | 100 % | ✅ |
110 | [CISSS de Lanaudière](cisss_lanaudiere.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 82 | 6 % | 100 % | ✅ | 111 | [CISSS de Lanaudière](cisss_lanaudiere.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 82 | 6 % | 100 % | ✅ |
111 | [Renaud-Bray](renaud_bray.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 82 | 0 % | 100 % | ✅ | 112 | [Renaud-Bray](renaud_bray.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 82 | 0 % | 100 % | ✅ |
112−| [Bulkbarn](bulkbarn.md) | [`dayforce`](ats-dayforce.md) | 81 | 0 % | 100 % | ✅ | 113+| [CAE](cae.md) | [`workday`](ats-workday.md) | 78 | 26 % | 90 % | ✅ |
113 | [Promutuel Assurance](promutuel.md) | [`workday`](ats-workday.md) | 76 | 1 % | 100 % | ✅ | 114 | [Promutuel Assurance](promutuel.md) | [`workday`](ats-workday.md) | 76 | 1 % | 100 % | ✅ |
114−| [CAE](cae.md) | [`workday`](ats-workday.md) | 75 | 27 % | 93 % | ✅ | 115+| [iA Groupe financier](ia_groupe.md) | [`workday`](ats-workday.md) | 73 | 100 % | 99 % | ✅ |
115−| [iA Groupe financier](ia_groupe.md) | [`workday`](ats-workday.md) | 74 | 100 % | 99 % | ✅ | 116+| [Agnico Eagle Mines](agnico_eagle.md) | [`taleo`](ats-taleo.md) | 70 | 0 % | 100 % | ✅ |
116−| [Agnico Eagle Mines](agnico_eagle.md) | [`taleo`](ats-taleo.md) | 71 | 0 % | 100 % | ✅ |
117 | [EMCO](emcocorporation.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 66 | 44 % | 100 % | ✅ | 117 | [EMCO](emcocorporation.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 66 | 44 % | 100 % | ✅ |
118−| [Gevernova](gevernova.md) | [`workday`](ats-workday.md) | 66 | 32 % | 91 % | ✅ |
119 | [Gflenv](gflenv.md) | [`workday`](ats-workday.md) | 66 | 6 % | 92 % | ✅ | 118 | [Gflenv](gflenv.md) | [`workday`](ats-workday.md) | 66 | 6 % | 92 % | ✅ |
120−| [Banque CIBC](cibc.md) | [`workday`](ats-workday.md) | 63 | 0 % | 98 % | ✅ | 119+| [Gevernova](gevernova.md) | [`workday`](ats-workday.md) | 65 | 32 % | 91 % | ✅ |
121 | [Laporte Experts Conseils](laportefr.md) | [`greenhouse`](ats-greenhouse.md) | 63 | 0 % | 100 % | ✅ | 120 | [Laporte Experts Conseils](laportefr.md) | [`greenhouse`](ats-greenhouse.md) | 63 | 0 % | 100 % | ✅ |
122 | [Lifeworks](lifeworks.md) | [`workday`](ats-workday.md) | 62 | 29 % | 84 % | ✅ | 121 | [Lifeworks](lifeworks.md) | [`workday`](ats-workday.md) | 62 | 29 % | 84 % | ✅ |
123−| [Autodesk](autodesk.md) | [`eightfold`](ats-eightfold.md) | 61 | 82 % | 100 % | ✅ | 122+| [Agropur](agropur.md) | [`workday`](ats-workday.md) | 60 | 97 % | 93 % | ✅ |
123+| [Autodesk](autodesk.md) | [`eightfold`](ats-eightfold.md) | 60 | 82 % | 100 % | ✅ |
124 | [Dexterra](dexterra.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 60 | 0 % | 100 % | ✅ | 124 | [Dexterra](dexterra.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 60 | 0 % | 100 % | ✅ |
125 | [Lightspeed Commerce](lightspeedhq.md) | [`ashby`](ats-ashby.md) | 60 | 7 % | 100 % | ✅ | 125 | [Lightspeed Commerce](lightspeedhq.md) | [`ashby`](ats-ashby.md) | 60 | 7 % | 100 % | ✅ |
126 | [TELUS](telus.md) | [`successfactors`](ats-successfactors.md) | 60 | 0 % | 100 % | ✅ | 126 | [TELUS](telus.md) | [`successfactors`](ats-successfactors.md) | 60 | 0 % | 100 % | ✅ |
127−| [Agropur](agropur.md) | [`workday`](ats-workday.md) | 57 | 96 % | 96 % | ✅ | 127+| [Banque CIBC](cibc.md) | [`workday`](ats-workday.md) | 58 | 0 % | 100 % | ✅ |
128+| [Beneva](beneva.md) | [`workday`](ats-workday.md) | 57 | 0 % | 100 % | ✅ |
128 | [Kiewit (Ganotec)](kiewit_ganotec.md) | [`successfactors`](ats-successfactors.md) | 57 | 0 % | 100 % | ✅ | 129 | [Kiewit (Ganotec)](kiewit_ganotec.md) | [`successfactors`](ats-successfactors.md) | 57 | 0 % | 100 % | ✅ |
129−| [Beneva](beneva.md) | [`workday`](ats-workday.md) | 56 | 0 % | 100 % | ✅ | 130+| [Norda Stelo](nordastelo.md) | [`teamtailor`](ats-teamtailor.md) | 57 | 0 % | 95 % | ✅ |
130 | [Gdv](gdv.md) | [`dayforce`](ats-dayforce.md) | 56 | 0 % | 100 % | ✅ | 131 | [Gdv](gdv.md) | [`dayforce`](ats-dayforce.md) | 56 | 0 % | 100 % | ✅ |
131−| [Norda Stelo](nordastelo.md) | [`teamtailor`](ats-teamtailor.md) | 56 | 0 % | 95 % | ✅ |
132 | [Automobileendirect](automobileendirect.md) | [`dayforce`](ats-dayforce.md) | 55 | 0 % | 100 % | ✅ | 132 | [Automobileendirect](automobileendirect.md) | [`dayforce`](ats-dayforce.md) | 55 | 0 % | 100 % | ✅ |
133 | [MaintainX](maintainx.md) | [`ashby`](ats-ashby.md) | 55 | 73 % | 78 % | ✅ | 133 | [MaintainX](maintainx.md) | [`ashby`](ats-ashby.md) | 55 | 73 % | 78 % | ✅ |
134 | [Squarepoint Capital](squarepointcapital.md) | [`greenhouse`](ats-greenhouse.md) | 55 | 38 % | 100 % | ✅ | 134 | [Squarepoint Capital](squarepointcapital.md) | [`greenhouse`](ats-greenhouse.md) | 55 | 38 % | 100 % | ✅ |
135 | [ANCIA Personnel](anciapersonnelinc.md) | [`recruitee`](ats-recruitee.md) | 54 | 9 % | 100 % | ✅ | 135 | [ANCIA Personnel](anciapersonnelinc.md) | [`recruitee`](ats-recruitee.md) | 54 | 9 % | 100 % | ✅ |
136 | [Gray Collection (Groupe Antonopoulos)](graycollection.md) | [`dayforce`](ats-dayforce.md) | 54 | 0 % | 100 % | ✅ | 136 | [Gray Collection (Groupe Antonopoulos)](graycollection.md) | [`dayforce`](ats-dayforce.md) | 54 | 0 % | 100 % | ✅ |
137−| [Santé Québec](sante_quebec.md) | [`digitalrecruiters`](ats-digitalrecruiters.md) | 54 | 96 % | 44 % | ✅ |
138 | [Groupe Canam](groupecanam.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 53 | 75 % | 98 % | ✅ | 137 | [Groupe Canam](groupecanam.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 53 | 75 % | 98 % | ✅ |
139 | [Kruger](kruger.md) | [`taleo_tbe`](ats-taleo_tbe.md) | 53 | 9 % | 100 % | ✅ | 138 | [Kruger](kruger.md) | [`taleo_tbe`](ats-taleo_tbe.md) | 53 | 9 % | 100 % | ✅ |
140 | [PwC Canada](pwc.md) | [`workday`](ats-workday.md) | 53 | 98 % | 72 % | ✅ | 139 | [PwC Canada](pwc.md) | [`workday`](ats-workday.md) | 53 | 98 % | 72 % | ✅ |
141 | [McKesson Canada](mckesson.md) | [`workday`](ats-workday.md) | 51 | 82 % | 82 % | ✅ | 140 | [McKesson Canada](mckesson.md) | [`workday`](ats-workday.md) | 51 | 82 % | 82 % | ✅ |
141+| [Santé Québec](sante_quebec.md) | [`digitalrecruiters`](ats-digitalrecruiters.md) | 51 | 96 % | 43 % | ✅ |
142 | [Fairstone](fairstone.md) | [`workday`](ats-workday.md) | 48 | 48 % | 92 % | ✅ | 142 | [Fairstone](fairstone.md) | [`workday`](ats-workday.md) | 48 | 48 % | 92 % | ✅ |
143 | [ApexFocusGroup](afg.md) | [`workable`](ats-workable.md) | 46 | 0 % | 100 % | ✅ | 143 | [ApexFocusGroup](afg.md) | [`workable`](ats-workable.md) | 46 | 0 % | 100 % | ✅ |
144 | [Myhrabc](myhrabc.md) | [`workday`](ats-workday.md) | 46 | 48 % | 54 % | ✅ | 144 | [Myhrabc](myhrabc.md) | [`workday`](ats-workday.md) | 46 | 48 % | 54 % | ✅ |
145 | [Unoria](unoria.md) | [`dayforce`](ats-dayforce.md) | 46 | 0 % | 100 % | ✅ | 145 | [Unoria](unoria.md) | [`dayforce`](ats-dayforce.md) | 46 | 0 % | 100 % | ✅ |
146 | [BPA (Experts-conseils)](bpa.md) | [`dayforce`](ats-dayforce.md) | 45 | 0 % | 100 % | ✅ | 146 | [BPA (Experts-conseils)](bpa.md) | [`dayforce`](ats-dayforce.md) | 45 | 0 % | 100 % | ✅ |
147+| [Brand Momentum](brandmomentum.md) | [`breezy`](ats-breezy.md) | 45 | 73 % | 91 % | ✅ |
147 | [Camions Excellence Peterbilt](excellencepeterbilt.md) | [`dayforce`](ats-dayforce.md) | 45 | 24 % | 100 % | ✅ | 148 | [Camions Excellence Peterbilt](excellencepeterbilt.md) | [`dayforce`](ats-dayforce.md) | 45 | 24 % | 100 % | ✅ |
148 | [Saputo](saputo.md) | [`workday`](ats-workday.md) | 45 | 84 % | 100 % | ✅ | 149 | [Saputo](saputo.md) | [`workday`](ats-workday.md) | 45 | 84 % | 100 % | ✅ |
149 | [CHU de Québec — Université Laval](chu_quebec.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 44 | 2 % | 100 % | ✅ | 150 | [CHU de Québec — Université Laval](chu_quebec.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 44 | 2 % | 100 % | ✅ |
150 | [Laura Canada](lauracanada.md) | [`dayforce`](ats-dayforce.md) | 44 | 0 % | 100 % | ✅ | 151 | [Laura Canada](lauracanada.md) | [`dayforce`](ats-dayforce.md) | 44 | 0 % | 100 % | ✅ |
151 | [Levio](levio.md) | [`greenhouse`](ats-greenhouse.md) | 44 | 0 % | 100 % | ✅ | 152 | [Levio](levio.md) | [`greenhouse`](ats-greenhouse.md) | 44 | 0 % | 100 % | ✅ |
153+| [Techo-Bloc](techo_bloc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 44 | 59 % | 100 % | ✅ |
152 | [La Maison Simons](simons.md) | [`workday`](ats-workday.md) | 43 | 0 % | 88 % | ✅ | 154 | [La Maison Simons](simons.md) | [`workday`](ats-workday.md) | 43 | 0 % | 88 % | ✅ |
153 | [Valsoft](valsoft_corp.md) | [`workable`](ats-workable.md) | 43 | 5 % | 100 % | ✅ | 155 | [Valsoft](valsoft_corp.md) | [`workable`](ats-workable.md) | 43 | 5 % | 100 % | ✅ |
154−| [Alterra](alterra.md) | [`workday`](ats-workday.md) | 42 | 71 % | 98 % | ✅ | 156+| [Alterra](alterra.md) | [`workday`](ats-workday.md) | 42 | 71 % | 100 % | ✅ |
155 | [Bdo](bdo.md) | [`workday`](ats-workday.md) | 42 | 10 % | 71 % | ✅ | 157 | [Bdo](bdo.md) | [`workday`](ats-workday.md) | 42 | 10 % | 71 % | ✅ |
156 | [Cogeco](cogeco.md) | [`workday`](ats-workday.md) | 42 | 19 % | 48 % | ✅ | 158 | [Cogeco](cogeco.md) | [`workday`](ats-workday.md) | 42 | 19 % | 48 % | ✅ |
157 | [Intelcom (Dragonfly)](intelcomgroup.md) | [`workday`](ats-workday.md) | 42 | 0 % | 98 % | ✅ | 159 | [Intelcom (Dragonfly)](intelcomgroup.md) | [`workday`](ats-workday.md) | 42 | 0 % | 98 % | ✅ |
158 | [JD Sports Canada](jdsports.md) | [`dayforce`](ats-dayforce.md) | 42 | 0 % | 100 % | ✅ | 160 | [JD Sports Canada](jdsports.md) | [`dayforce`](ats-dayforce.md) | 42 | 0 % | 100 % | ✅ |
159 | [SOGECLAIR](sogeclair.md) | [`workable`](ats-workable.md) | 42 | 2 % | 100 % | ✅ | 161 | [SOGECLAIR](sogeclair.md) | [`workable`](ats-workable.md) | 42 | 2 % | 100 % | ✅ |
160−| [Brand Momentum](brandmomentum.md) | [`breezy`](ats-breezy.md) | 41 | 71 % | 100 % | ✅ |
161−| [Manuvie](manulife.md) | [`workday`](ats-workday.md) | 41 | 95 % | 54 % | ✅ |
162 | [Eurofins EnvironeX](eurofinsenvironex.md) | [`recruitee`](ats-recruitee.md) | 40 | 0 % | 100 % | ✅ | 162 | [Eurofins EnvironeX](eurofinsenvironex.md) | [`recruitee`](ats-recruitee.md) | 40 | 0 % | 100 % | ✅ |
163 | [Sopra Steria](soprasteria1.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 40 | 0 % | 100 % | ✅ | 163 | [Sopra Steria](soprasteria1.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 40 | 0 % | 100 % | ✅ |
164−| [Techo-Bloc](techo_bloc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 40 | 55 % | 100 % | ✅ |
165 | [Coveo](coveofr.md) | [`greenhouse`](ats-greenhouse.md) | 39 | 0 % | 100 % | ✅ | 164 | [Coveo](coveofr.md) | [`greenhouse`](ats-greenhouse.md) | 39 | 0 % | 100 % | ✅ |
166 | [Groupe CH (Canadiens de Montréal, Centre Bell)](groupech.md) | [`dayforce`](ats-dayforce.md) | 39 | 0 % | 100 % | ✅ | 165 | [Groupe CH (Canadiens de Montréal, Centre Bell)](groupech.md) | [`dayforce`](ats-dayforce.md) | 39 | 0 % | 100 % | ✅ |
167 | [Info-Ways](info_ways.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 39 | 0 % | 100 % | ✅ | 166 | [Info-Ways](info_ways.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 39 | 0 % | 100 % | ✅ |
@@ -173,9 +172,9 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
173 | [Workin Group](workinquebec.md) | [`teamtailor`](ats-teamtailor.md) | 38 | 58 % | 100 % | ✅ | 172 | [Workin Group](workinquebec.md) | [`teamtailor`](ats-teamtailor.md) | 38 | 58 % | 100 % | ✅ |
174 | [Cohere](cohere.md) | [`ashby`](ats-ashby.md) | 37 | 92 % | 30 % | ✅ | 173 | [Cohere](cohere.md) | [`ashby`](ats-ashby.md) | 37 | 92 % | 30 % | ✅ |
175 | [KABS](kabs.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 37 | 0 % | 100 % | ✅ | 174 | [KABS](kabs.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 37 | 0 % | 100 % | ✅ |
175+| [Manuvie](manulife.md) | [`workday`](ats-workday.md) | 37 | 95 % | 59 % | ✅ |
176 | [EXFO](exfo.md) | [`workday`](ats-workday.md) | 36 | 0 % | 100 % | ✅ | 176 | [EXFO](exfo.md) | [`workday`](ats-workday.md) | 36 | 0 % | 100 % | ✅ |
177 | [Investissements PSP](investpsp.md) | [`workday`](ats-workday.md) | 36 | 3 % | 100 % | ✅ | 177 | [Investissements PSP](investpsp.md) | [`workday`](ats-workday.md) | 36 | 3 % | 100 % | ✅ |
178−| [VIA Rail Canada](via_rail.md) | [`successfactors`](ats-successfactors.md) | 36 | 0 % | 100 % | ✅ |
179 | [Industries Lassonde](lassonde.md) | [`custom`](ats-custom.md) | 35 | 34 % | 89 % | ✅ | 178 | [Industries Lassonde](lassonde.md) | [`custom`](ats-custom.md) | 35 | 34 % | 89 % | ✅ |
180 | [Transat A.T.](transatat1.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 35 | 6 % | 100 % | ✅ | 179 | [Transat A.T.](transatat1.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 35 | 6 % | 100 % | ✅ |
181 | [Coveo](coveoen.md) | [`greenhouse`](ats-greenhouse.md) | 34 | 0 % | 100 % | ✅ | 180 | [Coveo](coveoen.md) | [`greenhouse`](ats-greenhouse.md) | 34 | 0 % | 100 % | ✅ |
@@ -183,14 +182,14 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
183 | [Ms](ms.md) | [`workday`](ats-workday.md) | 34 | 0 % | 100 % | ✅ | 182 | [Ms](ms.md) | [`workday`](ats-workday.md) | 34 | 0 % | 100 % | ✅ |
184 | [Sany](imperialdade.md) | [`dayforce`](ats-dayforce.md) | 34 | 0 % | 100 % | ✅ | 183 | [Sany](imperialdade.md) | [`dayforce`](ats-dayforce.md) | 34 | 0 % | 100 % | ✅ |
185 | [Sapsol Technologies Inc](sapsol_technologies_inc_7.md) | [`workable`](ats-workable.md) | 34 | 0 % | 100 % | ✅ | 184 | [Sapsol Technologies Inc](sapsol_technologies_inc_7.md) | [`workable`](ats-workable.md) | 34 | 0 % | 100 % | ✅ |
186−| [AccorHotel](accorhotel.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 33 | 52 % | 100 % | ✅ | 185+| [VIA Rail Canada](via_rail.md) | [`successfactors`](ats-successfactors.md) | 34 | 0 % | 100 % | ✅ |
187 | [exo (transport métropolitain)](exo.md) | [`taleo_tbe`](ats-taleo_tbe.md) | 33 | 0 % | 94 % | ✅ | 186 | [exo (transport métropolitain)](exo.md) | [`taleo_tbe`](ats-taleo_tbe.md) | 33 | 0 % | 94 % | ✅ |
188 | [Kenworthmaska](kenworthmaska.md) | [`dayforce`](ats-dayforce.md) | 33 | 3 % | 100 % | ✅ | 187 | [Kenworthmaska](kenworthmaska.md) | [`dayforce`](ats-dayforce.md) | 33 | 3 % | 100 % | ✅ |
189 | [Tecsys](tecsys.md) | [`workable`](ats-workable.md) | 33 | 0 % | 100 % | ✅ | 188 | [Tecsys](tecsys.md) | [`workable`](ats-workable.md) | 33 | 0 % | 100 % | ✅ |
190 | [Uhaul](uhaul.md) | [`workday`](ats-workday.md) | 33 | 0 % | 100 % | ✅ | 189 | [Uhaul](uhaul.md) | [`workday`](ats-workday.md) | 33 | 0 % | 100 % | ✅ |
191 | [Wabtec](wabtec.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 33 | 18 % | 100 % | ✅ | 190 | [Wabtec](wabtec.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 33 | 18 % | 100 % | ✅ |
192−| [Lgs](lgs.md) | [`dayforce`](ats-dayforce.md) | 32 | 0 % | 100 % | ✅ | 191+| [AccorHotel](accorhotel.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 32 | 53 % | 100 % | ✅ |
193−| [AppDirect](appdirect.md) | [`greenhouse`](ats-greenhouse.md) | 31 | 35 % | 100 % | ✅ | 192+| [AppDirect](appdirect.md) | [`greenhouse`](ats-greenhouse.md) | 32 | 34 % | 100 % | ✅ |
194 | [Comptable prix de revient](exceldorfoods478.md) | [`dayforce`](ats-dayforce.md) | 31 | 19 % | 100 % | ✅ | 193 | [Comptable prix de revient](exceldorfoods478.md) | [`dayforce`](ats-dayforce.md) | 31 | 19 % | 100 % | ✅ |
195 | [Domtar](domtar.md) | [`successfactors`](ats-successfactors.md) | 31 | 0 % | 100 % | ✅ | 194 | [Domtar](domtar.md) | [`successfactors`](ats-successfactors.md) | 31 | 0 % | 100 % | ✅ |
196 | [Groupe Bellemare](groupe_bellemare.md) | [`njoyn`](ats-njoyn.md) | 31 | 0 % | 0 % | ✅ | 195 | [Groupe Bellemare](groupe_bellemare.md) | [`njoyn`](ats-njoyn.md) | 31 | 0 % | 0 % | ✅ |
@@ -201,43 +200,44 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
201 | [Institut de recherche du CUSM](cusm_ir.md) | [`njoyn`](ats-njoyn.md) | 30 | 93 % | 0 % | ✅ | 200 | [Institut de recherche du CUSM](cusm_ir.md) | [`njoyn`](ats-njoyn.md) | 30 | 93 % | 0 % | ✅ |
202 | [NBCUniversal](nbcuniversal3.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 30 | 0 % | 100 % | ✅ | 201 | [NBCUniversal](nbcuniversal3.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 30 | 0 % | 100 % | ✅ |
203 | [Nortera](nortera.md) | [`ultipro`](ats-ultipro.md) | 30 | 53 % | 100 % | ✅ | 202 | [Nortera](nortera.md) | [`ultipro`](ats-ultipro.md) | 30 | 53 % | 100 % | ✅ |
204−| [Rio Tinto](riotinto.md) | [`workday`](ats-workday.md) | 30 | 7 % | 97 % | ✅ |
205 | [Rodeo FX](rodeofx.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 30 | 0 % | 93 % | ✅ | 203 | [Rodeo FX](rodeofx.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 30 | 0 % | 93 % | ✅ |
206 | [Service alimentaire Gordon](gfs.md) | [`workday`](ats-workday.md) | 30 | 60 % | 100 % | ✅ | 204 | [Service alimentaire Gordon](gfs.md) | [`workday`](ats-workday.md) | 30 | 60 % | 100 % | ✅ |
207 | [H&M](hmgroup.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 29 | 7 % | 100 % | ✅ | 205 | [H&M](hmgroup.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 29 | 7 % | 100 % | ✅ |
208 | [LGI Healthcare Solutions Santé Inc.](lgihealthcaresolutionssanteinc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 29 | 0 % | 100 % | ✅ | 206 | [LGI Healthcare Solutions Santé Inc.](lgihealthcaresolutionssanteinc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 29 | 0 % | 100 % | ✅ |
209 | [OPENLANE Canada](openlane.md) | [`workday`](ats-workday.md) | 29 | 14 % | 90 % | ✅ | 207 | [OPENLANE Canada](openlane.md) | [`workday`](ats-workday.md) | 29 | 14 % | 90 % | ✅ |
208+| [Rio Tinto](riotinto.md) | [`workday`](ats-workday.md) | 29 | 7 % | 97 % | ✅ |
210 | [Structube](structube1.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 29 | 0 % | 100 % | ✅ | 209 | [Structube](structube1.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 29 | 0 % | 100 % | ✅ |
211−| [Sun Life](sunlife.md) | [`workday`](ats-workday.md) | 29 | 7 % | 66 % | ✅ |
212 | [Abinbev](abinbev.md) | [`workday`](ats-workday.md) | 28 | 96 % | 100 % | ✅ | 210 | [Abinbev](abinbev.md) | [`workday`](ats-workday.md) | 28 | 96 % | 100 % | ✅ |
213 | [Clinical Research Associate](syneoshealth.md) | [`workday`](ats-workday.md) | 28 | 0 % | 96 % | ✅ | 211 | [Clinical Research Associate](syneoshealth.md) | [`workday`](ats-workday.md) | 28 | 0 % | 96 % | ✅ |
212+| [Playground](playground.md) | [`jazzhr`](ats-jazzhr.md) | 28 | 57 % | 68 % | ✅ |
214 | [Scotts Canada (Fafard)](scottsmiraclegro.md) | [`workday`](ats-workday.md) | 28 | 4 % | 100 % | ✅ | 213 | [Scotts Canada (Fafard)](scottsmiraclegro.md) | [`workday`](ats-workday.md) | 28 | 4 % | 100 % | ✅ |
215 | [Spectrum Health Care](spectrumhealthcare.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 28 | 89 % | 100 % | ✅ | 214 | [Spectrum Health Care](spectrumhealthcare.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 28 | 89 % | 100 % | ✅ |
215+| [Sun Life](sunlife.md) | [`workday`](ats-workday.md) | 28 | 7 % | 64 % | ✅ |
216 | [Énergir](energir.md) | [`successfactors`](ats-successfactors.md) | 28 | 0 % | 100 % | ✅ | 216 | [Énergir](energir.md) | [`successfactors`](ats-successfactors.md) | 28 | 0 % | 100 % | ✅ |
217 | [Altasciences](altasciences.md) | [`workday`](ats-workday.md) | 27 | 4 % | 96 % | ✅ | 217 | [Altasciences](altasciences.md) | [`workday`](ats-workday.md) | 27 | 4 % | 96 % | ✅ |
218 | [Best Buy Canada](bestbuycanada.md) | [`workday`](ats-workday.md) | 27 | 0 % | 44 % | ✅ | 218 | [Best Buy Canada](bestbuycanada.md) | [`workday`](ats-workday.md) | 27 | 0 % | 44 % | ✅ |
219−| [Playground](playground.md) | [`jazzhr`](ats-jazzhr.md) | 27 | 59 % | 70 % | ✅ |
220 | [The Children's Place](childrensplace.md) | [`workday`](ats-workday.md) | 27 | 0 % | 22 % | ✅ | 219 | [The Children's Place](childrensplace.md) | [`workday`](ats-workday.md) | 27 | 0 % | 22 % | ✅ |
221 | [Behaviour Interactif](bhvr.md) | [`lever`](ats-lever.md) | 26 | 0 % | 100 % | ✅ | 220 | [Behaviour Interactif](bhvr.md) | [`lever`](ats-lever.md) | 26 | 0 % | 100 % | ✅ |
221+| [Lgs](lgs.md) | [`dayforce`](ats-dayforce.md) | 26 | 0 % | 100 % | ✅ |
222 | [Mallette - Saguenay](mallette_sag.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 26 | 4 % | 85 % | ✅ | 222 | [Mallette - Saguenay](mallette_sag.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 26 | 4 % | 85 % | ✅ |
223 | [RM Staffing B.V.](rebootmonkey.md) | [`recruitee`](ats-recruitee.md) | 26 | 85 % | 100 % | ✅ | 223 | [RM Staffing B.V.](rebootmonkey.md) | [`recruitee`](ats-recruitee.md) | 26 | 85 % | 100 % | ✅ |
224 | [Tmx](tmx.md) | [`workday`](ats-workday.md) | 26 | 0 % | 69 % | ✅ | 224 | [Tmx](tmx.md) | [`workday`](ats-workday.md) | 26 | 0 % | 69 % | ✅ |
225 | [AbbVie](abbvie.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 25 | 0 % | 100 % | ✅ | 225 | [AbbVie](abbvie.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 25 | 0 % | 100 % | ✅ |
226 | [CDPQ — Caisse de dépôt et placement du Québec](cdpq.md) | [`workday`](ats-workday.md) | 25 | 0 % | 100 % | ✅ | 226 | [CDPQ — Caisse de dépôt et placement du Québec](cdpq.md) | [`workday`](ats-workday.md) | 25 | 0 % | 100 % | ✅ |
227−| [Galderma](galderma.md) | [`workday`](ats-workday.md) | 25 | 16 % | 100 % | ✅ |
228 | [Logm](logm.md) | [`dayforce`](ats-dayforce.md) | 25 | 80 % | 100 % | ✅ | 227 | [Logm](logm.md) | [`dayforce`](ats-dayforce.md) | 25 | 80 % | 100 % | ✅ |
229 | [MEDFAR Solutions Cliniques](medfar.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 25 | 0 % | 100 % | ✅ | 228 | [MEDFAR Solutions Cliniques](medfar.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 25 | 0 % | 100 % | ✅ |
229+| [Monteur CVC 1 /HVAC Assembler 1](sunbeltrentals.md) | [`workday`](ats-workday.md) | 25 | 0 % | 68 % | ✅ |
230 | [Montreal Export Package Handler (18:00-23:00)](hcmportal.md) | [`workday`](ats-workday.md) | 25 | 88 % | 96 % | ✅ | 230 | [Montreal Export Package Handler (18:00-23:00)](hcmportal.md) | [`workday`](ats-workday.md) | 25 | 88 % | 96 % | ✅ |
231+| [Unitytech](unitytech.md) | [`workday`](ats-workday.md) | 25 | 92 % | 80 % | ✅ |
231 | [Ville de Gatineau](ville_gatineau.md) | [`njoyn`](ats-njoyn.md) | 25 | 100 % | 0 % | ✅ | 232 | [Ville de Gatineau](ville_gatineau.md) | [`njoyn`](ats-njoyn.md) | 25 | 100 % | 0 % | ✅ |
232 | [Distribution stox](distributionstox2.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 24 | 46 % | 100 % | ✅ | 233 | [Distribution stox](distributionstox2.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 24 | 46 % | 100 % | ✅ |
233 | [DRB Distribution](drbdistribution.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 24 | 0 % | 96 % | ✅ | 234 | [DRB Distribution](drbdistribution.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 24 | 0 % | 96 % | ✅ |
234 | [FedEx Express Canada](fedex.md) | [`workday`](ats-workday.md) | 24 | 100 % | 88 % | ✅ | 235 | [FedEx Express Canada](fedex.md) | [`workday`](ats-workday.md) | 24 | 100 % | 88 % | ✅ |
235 | [Huawei Canada](huaweicanada.md) | [`recruitee`](ats-recruitee.md) | 24 | 0 % | 100 % | ✅ | 236 | [Huawei Canada](huaweicanada.md) | [`recruitee`](ats-recruitee.md) | 24 | 0 % | 100 % | ✅ |
236 | [Lyft](lyft.md) | [`greenhouse`](ats-greenhouse.md) | 24 | 100 % | 100 % | ✅ | 237 | [Lyft](lyft.md) | [`greenhouse`](ats-greenhouse.md) | 24 | 100 % | 100 % | ✅ |
237−| [Monteur CVC 1 /HVAC Assembler 1](sunbeltrentals.md) | [`workday`](ats-workday.md) | 24 | 0 % | 67 % | ✅ |
238 | [Progesys](progesys_inc.md) | [`breezy`](ats-breezy.md) | 24 | 4 % | 96 % | ✅ | 238 | [Progesys](progesys_inc.md) | [`breezy`](ats-breezy.md) | 24 | 4 % | 96 % | ✅ |
239 | [Stellajones](stellajones.md) | [`dayforce`](ats-dayforce.md) | 24 | 21 % | 100 % | ✅ | 239 | [Stellajones](stellajones.md) | [`dayforce`](ats-dayforce.md) | 24 | 21 % | 100 % | ✅ |
240−| [Unitytech](unitytech.md) | [`workday`](ats-workday.md) | 24 | 96 % | 83 % | ✅ | 240+| [Alcoa Canada](alcoa.md) | [`workday`](ats-workday.md) | 23 | 13 % | 48 % | ✅ |
241 | [ATIA Ltd](atialtd.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 23 | 43 % | 100 % | ✅ | 241 | [ATIA Ltd](atialtd.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 23 | 43 % | 100 % | ✅ |
242 | [Baseten](baseten.md) | [`ashby`](ats-ashby.md) | 23 | 100 % | 0 % | ✅ | 242 | [Baseten](baseten.md) | [`ashby`](ats-ashby.md) | 23 | 100 % | 0 % | ✅ |
243 | [Broccolini](broccolini.md) | [`bamboohr`](ats-bamboohr.md) | 23 | 0 % | 100 % | ✅ | 243 | [Broccolini](broccolini.md) | [`bamboohr`](ats-bamboohr.md) | 23 | 0 % | 100 % | ✅ |
@@ -246,11 +246,11 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
246 | [Directive](directive.md) | [`ashby`](ats-ashby.md) | 22 | 5 % | 0 % | ✅ | 246 | [Directive](directive.md) | [`ashby`](ats-ashby.md) | 22 | 5 % | 0 % | ✅ |
247 | [Keywords Studios](keywords_intl1.md) | [`workable`](ats-workable.md) | 22 | 95 % | 100 % | ✅ | 247 | [Keywords Studios](keywords_intl1.md) | [`workable`](ats-workable.md) | 22 | 95 % | 100 % | ✅ |
248 | [LG2](lg2.md) | [`recruitee`](ats-recruitee.md) | 22 | 5 % | 100 % | ✅ | 248 | [LG2](lg2.md) | [`recruitee`](ats-recruitee.md) | 22 | 5 % | 100 % | ✅ |
249−| [Onepoint (nventive / Logient)](onepoint.md) | [`workday`](ats-workday.md) | 22 | 0 % | 100 % | ✅ |
250 | [OPAL-RT Technologies](opalrt.md) | [`bamboohr`](ats-bamboohr.md) | 22 | 0 % | 100 % | ✅ | 249 | [OPAL-RT Technologies](opalrt.md) | [`bamboohr`](ats-bamboohr.md) | 22 | 0 % | 100 % | ✅ |
251 | [AVP](aviva.md) | [`workday`](ats-workday.md) | 21 | 19 % | 90 % | ✅ | 250 | [AVP](aviva.md) | [`workday`](ats-workday.md) | 21 | 19 % | 90 % | ✅ |
252 | [Groupe Mach](groupemach.md) | [`dayforce`](ats-dayforce.md) | 21 | 10 % | 100 % | ✅ | 251 | [Groupe Mach](groupemach.md) | [`dayforce`](ats-dayforce.md) | 21 | 10 % | 100 % | ✅ |
253 | [mthree](mthreerecruitingportal.md) | [`greenhouse`](ats-greenhouse.md) | 21 | 0 % | 100 % | ✅ | 252 | [mthree](mthreerecruitingportal.md) | [`greenhouse`](ats-greenhouse.md) | 21 | 0 % | 100 % | ✅ |
253+| [Onepoint (nventive / Logient)](onepoint.md) | [`workday`](ats-workday.md) | 21 | 0 % | 100 % | ✅ |
254 | [Responsable Stratégie des Affaires](uniselect.md) | [`workday`](ats-workday.md) | 21 | 14 % | 100 % | ✅ | 254 | [Responsable Stratégie des Affaires](uniselect.md) | [`workday`](ats-workday.md) | 21 | 14 % | 100 % | ✅ |
255 | [Sales Associate III](tapestry.md) | [`workday`](ats-workday.md) | 21 | 100 % | 100 % | ✅ | 255 | [Sales Associate III](tapestry.md) | [`workday`](ats-workday.md) | 21 | 100 % | 100 % | ✅ |
256 | [Talan](talan.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 21 | 0 % | 100 % | ✅ | 256 | [Talan](talan.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 21 | 0 % | 100 % | ✅ |
@@ -262,16 +262,15 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
262 | [Comptable en immobilier](belron.md) | [`workday`](ats-workday.md) | 20 | 5 % | 100 % | ✅ | 262 | [Comptable en immobilier](belron.md) | [`workday`](ats-workday.md) | 20 | 5 % | 100 % | ✅ |
263 | [dcbel](dcbel.md) | [`bamboohr`](ats-bamboohr.md) | 20 | 0 % | 100 % | ✅ | 263 | [dcbel](dcbel.md) | [`bamboohr`](ats-bamboohr.md) | 20 | 0 % | 100 % | ✅ |
264 | [Fund Accountant / Comptable de Fonds](sagardholdings.md) | [`workday`](ats-workday.md) | 20 | 15 % | 100 % | ✅ | 264 | [Fund Accountant / Comptable de Fonds](sagardholdings.md) | [`workday`](ats-workday.md) | 20 | 15 % | 100 % | ✅ |
265+| [Galderma](galderma.md) | [`workday`](ats-workday.md) | 20 | 20 % | 100 % | ✅ |
265 | [Préparateur de commandes](sysco.md) | [`workday`](ats-workday.md) | 20 | 10 % | 90 % | ✅ | 266 | [Préparateur de commandes](sysco.md) | [`workday`](ats-workday.md) | 20 | 10 % | 90 % | ✅ |
266 | [Search for](bcf.md) | [`workday`](ats-workday.md) | 20 | 0 % | 100 % | ✅ | 267 | [Search for](bcf.md) | [`workday`](ats-workday.md) | 20 | 0 % | 100 % | ✅ |
267 | [Sia](sia.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 20 | 0 % | 100 % | ✅ | 268 | [Sia](sia.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 20 | 0 % | 100 % | ✅ |
268 | [Systemex](systemex.md) | [`lever`](ats-lever.md) | 20 | 0 % | 100 % | ✅ | 269 | [Systemex](systemex.md) | [`lever`](ats-lever.md) | 20 | 0 % | 100 % | ✅ |
269 | [Xsolla](xsolla.md) | [`lever`](ats-lever.md) | 20 | 100 % | 95 % | ✅ | 270 | [Xsolla](xsolla.md) | [`lever`](ats-lever.md) | 20 | 100 % | 95 % | ✅ |
270−| [Alcoa Canada](alcoa.md) | [`workday`](ats-workday.md) | 19 | 16 % | 47 % | ✅ |
271 | [CHUM](chum.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 19 | 5 % | 100 % | ✅ | 271 | [CHUM](chum.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 19 | 5 % | 100 % | ✅ |
272 | [CSS des Découvreurs](cssdd.md) | [`digitalrecruiters`](ats-digitalrecruiters.md) | 19 | 89 % | 100 % | ✅ | 272 | [CSS des Découvreurs](cssdd.md) | [`digitalrecruiters`](ats-digitalrecruiters.md) | 19 | 89 % | 100 % | ✅ |
273 | [Groupeguilbault](groupeguilbault.md) | [`workday`](ats-workday.md) | 19 | 0 % | 100 % | ✅ | 273 | [Groupeguilbault](groupeguilbault.md) | [`workday`](ats-workday.md) | 19 | 0 % | 100 % | ✅ |
274−| [Hitachi](hitachi.md) | [`workday`](ats-workday.md) | 19 | 0 % | 100 % | ✅ |
275 | [Immiland Canada Inc.](immiland_canada_inc.md) | [`lever`](ats-lever.md) | 19 | 16 % | 100 % | ✅ | 274 | [Immiland Canada Inc.](immiland_canada_inc.md) | [`lever`](ats-lever.md) | 19 | 16 % | 100 % | ✅ |
276 | [Premierparks](premierparks.md) | [`dayforce`](ats-dayforce.md) | 19 | 5 % | 100 % | ✅ | 275 | [Premierparks](premierparks.md) | [`dayforce`](ats-dayforce.md) | 19 | 5 % | 100 % | ✅ |
277 | [Pré-assemblage](motionc.md) | [`dayforce`](ats-dayforce.md) | 19 | 0 % | 100 % | ✅ | 276 | [Pré-assemblage](motionc.md) | [`dayforce`](ats-dayforce.md) | 19 | 0 % | 100 % | ✅ |
@@ -285,7 +284,6 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
285 | [Uniboard](uniboard.md) | [`adp`](ats-adp.md) | 19 | 32 % | 63 % | ✅ | 284 | [Uniboard](uniboard.md) | [`adp`](ats-adp.md) | 19 | 32 % | 63 % | ✅ |
286 | [Valnet](valnetconcept.md) | [`jazzhr`](ats-jazzhr.md) | 19 | 0 % | 100 % | ✅ | 285 | [Valnet](valnetconcept.md) | [`jazzhr`](ats-jazzhr.md) | 19 | 0 % | 100 % | ✅ |
287 | [Airliquidehr](airliquidehr.md) | [`workday`](ats-workday.md) | 18 | 28 % | 100 % | ✅ | 286 | [Airliquidehr](airliquidehr.md) | [`workday`](ats-workday.md) | 18 | 28 % | 100 % | ✅ |
288−| [Bell Textron Canada](bell_textron.md) | [`taleo`](ats-taleo.md) | 18 | 0 % | 100 % | ✅ |
289 | [Egis Group](egisgroup.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 18 | 0 % | 100 % | ✅ | 287 | [Egis Group](egisgroup.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 18 | 0 % | 100 % | ✅ |
290 | [Groupe Nordik (Nordik Spa-Nature)](groupe_nordik.md) | [`adp`](ats-adp.md) | 18 | 28 % | 100 % | ✅ | 288 | [Groupe Nordik (Nordik Spa-Nature)](groupe_nordik.md) | [`adp`](ats-adp.md) | 18 | 28 % | 100 % | ✅ |
291 | [Lamour](lamour.md) | [`workable`](ats-workable.md) | 18 | 0 % | 100 % | ✅ | 289 | [Lamour](lamour.md) | [`workable`](ats-workable.md) | 18 | 0 % | 100 % | ✅ |
@@ -293,6 +291,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
293 | [ORA Partenaires](orapartenaires.md) | [`teamtailor`](ats-teamtailor.md) | 18 | 78 % | 94 % | ✅ | 291 | [ORA Partenaires](orapartenaires.md) | [`teamtailor`](ats-teamtailor.md) | 18 | 78 % | 94 % | ✅ |
294 | [Produits Labelink](labelink.md) | [`bamboohr`](ats-bamboohr.md) | 18 | 0 % | 100 % | ✅ | 292 | [Produits Labelink](labelink.md) | [`bamboohr`](ats-bamboohr.md) | 18 | 0 % | 100 % | ✅ |
295 | [Soprema](soprema.md) | [`dayforce`](ats-dayforce.md) | 18 | 28 % | 100 % | ✅ | 293 | [Soprema](soprema.md) | [`dayforce`](ats-dayforce.md) | 18 | 28 % | 100 % | ✅ |
294+| [Bell Textron Canada](bell_textron.md) | [`taleo`](ats-taleo.md) | 17 | 0 % | 100 % | ✅ |
296 | [GSK](gsk.md) | [`workday`](ats-workday.md) | 17 | 0 % | 88 % | ✅ | 295 | [GSK](gsk.md) | [`workday`](ats-workday.md) | 17 | 0 % | 88 % | ✅ |
297 | [McCarthy Tétrault](mccarthy_tetrault.md) | [`icims`](ats-icims.md) | 17 | 0 % | 100 % | ✅ | 296 | [McCarthy Tétrault](mccarthy_tetrault.md) | [`icims`](ats-icims.md) | 17 | 0 % | 100 % | ✅ |
298 | [Scalian](scalian.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 17 | 18 % | 100 % | ✅ | 297 | [Scalian](scalian.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 17 | 18 % | 100 % | ✅ |
@@ -303,6 +302,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
303 | [CAA-Québec](caaquebec.md) | [`workday`](ats-workday.md) | 16 | 38 % | 100 % | ✅ | 302 | [CAA-Québec](caaquebec.md) | [`workday`](ats-workday.md) | 16 | 38 % | 100 % | ✅ |
304 | [dentago](dentago.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 16 | 6 % | 75 % | ✅ | 303 | [dentago](dentago.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 16 | 6 % | 75 % | ✅ |
305 | [Fieracapital](fieracapital.md) | [`workday`](ats-workday.md) | 16 | 25 % | 81 % | ✅ | 304 | [Fieracapital](fieracapital.md) | [`workday`](ats-workday.md) | 16 | 25 % | 81 % | ✅ |
305+| [Hitachi](hitachi.md) | [`workday`](ats-workday.md) | 16 | 0 % | 100 % | ✅ |
306 | [Hubinternational](hubinternational.md) | [`workday`](ats-workday.md) | 16 | 19 % | 88 % | ✅ | 306 | [Hubinternational](hubinternational.md) | [`workday`](ats-workday.md) | 16 | 19 % | 88 % | ✅ |
307 | [Intervenant·e au suivi psychosocial](obm.md) | [`dayforce`](ats-dayforce.md) | 16 | 12 % | 100 % | ✅ | 307 | [Intervenant·e au suivi psychosocial](obm.md) | [`dayforce`](ats-dayforce.md) | 16 | 12 % | 100 % | ✅ |
308 | [Journalier(ère) de production](vestis.md) | [`dayforce`](ats-dayforce.md) | 16 | 0 % | 100 % | ✅ | 308 | [Journalier(ère) de production](vestis.md) | [`dayforce`](ats-dayforce.md) | 16 | 0 % | 100 % | ✅ |
@@ -345,6 +345,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
345 | [Relais & Châteaux](relaischateaux.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 14 | 0 % | 100 % | ✅ | 345 | [Relais & Châteaux](relaischateaux.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 14 | 0 % | 100 % | ✅ |
346 | [Renovco](renovco.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 14 | 0 % | 100 % | ✅ | 346 | [Renovco](renovco.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 14 | 0 % | 100 % | ✅ |
347 | [Responsable bilingue du marketing événementiel / Event ...](fil.md) | [`workday`](ats-workday.md) | 14 | 100 % | 43 % | ✅ | 347 | [Responsable bilingue du marketing événementiel / Event ...](fil.md) | [`workday`](ats-workday.md) | 14 | 100 % | 43 % | ✅ |
348+| [Bridgestone](bridgestone.md) | [`workday`](ats-workday.md) | 13 | 38 % | 92 % | ✅ |
348 | [Comptable de projet / Project Accountant](ellisdon.md) | [`workday`](ats-workday.md) | 13 | 15 % | 92 % | ✅ | 349 | [Comptable de projet / Project Accountant](ellisdon.md) | [`workday`](ats-workday.md) | 13 | 15 % | 92 % | ✅ |
349 | [Cuisinier(ère) 2, Restaurant Marcus & Lounge (Sur appel) / Cook 2 ...](fourseasons.md) | [`workday`](ats-workday.md) | 13 | 0 % | 100 % | ✅ | 350 | [Cuisinier(ère) 2, Restaurant Marcus & Lounge (Sur appel) / Cook 2 ...](fourseasons.md) | [`workday`](ats-workday.md) | 13 | 0 % | 100 % | ✅ |
350 | [Fempro (First Quality)](firstquality.md) | [`workday`](ats-workday.md) | 13 | 46 % | 100 % | ✅ | 351 | [Fempro (First Quality)](firstquality.md) | [`workday`](ats-workday.md) | 13 | 46 % | 100 % | ✅ |
@@ -365,7 +366,6 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
365 | [Victoria Park Medispa](vicpark.md) | [`bamboohr`](ats-bamboohr.md) | 13 | 0 % | 100 % | ✅ | 366 | [Victoria Park Medispa](vicpark.md) | [`bamboohr`](ats-bamboohr.md) | 13 | 0 % | 100 % | ✅ |
366 | [AlayaCare](alayacare.md) | [`greenhouse`](ats-greenhouse.md) | 12 | 0 % | 100 % | ✅ | 367 | [AlayaCare](alayacare.md) | [`greenhouse`](ats-greenhouse.md) | 12 | 0 % | 100 % | ✅ |
367 | [Aritzia](aritzia.md) | [`workday`](ats-workday.md) | 12 | 58 % | 100 % | ✅ | 368 | [Aritzia](aritzia.md) | [`workday`](ats-workday.md) | 12 | 58 % | 100 % | ✅ |
368−| [Bridgestone](bridgestone.md) | [`workday`](ats-workday.md) | 12 | 42 % | 100 % | ✅ |
369 | [Canadian Tire](canadiantirecorporation.md) | [`workday`](ats-workday.md) | 12 | 75 % | 92 % | ✅ | 369 | [Canadian Tire](canadiantirecorporation.md) | [`workday`](ats-workday.md) | 12 | 75 % | 92 % | ✅ |
370 | [Ccmhockey](ccmhockey.md) | [`dayforce`](ats-dayforce.md) | 12 | 0 % | 100 % | ✅ | 370 | [Ccmhockey](ccmhockey.md) | [`dayforce`](ats-dayforce.md) | 12 | 0 % | 100 % | ✅ |
371 | [CEP Forensique](cep.md) | [`dayforce`](ats-dayforce.md) | 12 | 0 % | 100 % | ✅ | 371 | [CEP Forensique](cep.md) | [`dayforce`](ats-dayforce.md) | 12 | 0 % | 100 % | ✅ |
@@ -412,7 +412,6 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
412 | [Stay22](stay22.md) | [`greenhouse`](ats-greenhouse.md) | 11 | 9 % | 100 % | ✅ | 412 | [Stay22](stay22.md) | [`greenhouse`](ats-greenhouse.md) | 11 | 9 % | 100 % | ✅ |
413 | [Toboggan Labs](tobogganlabs.md) | [`greenhouse`](ats-greenhouse.md) | 11 | 0 % | 100 % | ✅ | 413 | [Toboggan Labs](tobogganlabs.md) | [`greenhouse`](ats-greenhouse.md) | 11 | 0 % | 100 % | ✅ |
414 | [VF Corporation (The North Face, Vans)](vfc.md) | [`workday`](ats-workday.md) | 11 | 100 % | 100 % | ✅ | 414 | [VF Corporation (The North Face, Vans)](vfc.md) | [`workday`](ats-workday.md) | 11 | 100 % | 100 % | ✅ |
415−| [Ville de Terrebonne](ville_terrebonne.md) | [`njoyn`](ats-njoyn.md) | 11 | 91 % | 0 % | ✅ |
416 | [1perTInent inc](x1pertinentinc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 10 | 0 % | 80 % | ✅ | 415 | [1perTInent inc](x1pertinentinc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 10 | 0 % | 80 % | ✅ |
417 | [ADI - Albert Davidson Industries](adi_albert_davidson_industries.md) | [`breezy`](ats-breezy.md) | 10 | 100 % | 100 % | ✅ | 416 | [ADI - Albert Davidson Industries](adi_albert_davidson_industries.md) | [`breezy`](ats-breezy.md) | 10 | 100 % | 100 % | ✅ |
418 | [Airlab Inc.](airlabinc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 10 | 0 % | 100 % | ✅ | 417 | [Airlab Inc.](airlabinc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 10 | 0 % | 100 % | ✅ |
@@ -430,7 +429,6 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
430 | [Groupe PMI](groupepmi.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 10 | 50 % | 100 % | ✅ | 429 | [Groupe PMI](groupepmi.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 10 | 50 % | 100 % | ✅ |
431 | [Groupe Scandinave (Scandinave Spa)](gscandinave.md) | [`dayforce`](ats-dayforce.md) | 10 | 0 % | 100 % | ✅ | 430 | [Groupe Scandinave (Scandinave Spa)](gscandinave.md) | [`dayforce`](ats-dayforce.md) | 10 | 0 % | 100 % | ✅ |
432 | [Indigo Books & Music](indigobooksmusic.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 10 | 0 % | 100 % | ✅ | 431 | [Indigo Books & Music](indigobooksmusic.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 10 | 0 % | 100 % | ✅ |
433−| [Investissement Québec](investquebec.md) | [`workday`](ats-workday.md) | 10 | 0 % | 100 % | ✅ |
434 | [Les Excavations Lafontaine Inc.](lafontaineinc.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 10 | 0 % | 90 % | ✅ | 432 | [Les Excavations Lafontaine Inc.](lafontaineinc.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 10 | 0 % | 90 % | ✅ |
435 | [Lush Cosmétiques](lush.md) | [`greenhouse`](ats-greenhouse.md) | 10 | 100 % | 100 % | ✅ | 433 | [Lush Cosmétiques](lush.md) | [`greenhouse`](ats-greenhouse.md) | 10 | 100 % | 100 % | ✅ |
436 | [Mattel (Mega Bloks)](mattelinc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 10 | 0 % | 100 % | ✅ | 434 | [Mattel (Mega Bloks)](mattelinc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 10 | 0 % | 100 % | ✅ |
@@ -442,6 +440,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
442 | [Synertek](synertek.md) | [`teamtailor`](ats-teamtailor.md) | 10 | 80 % | 100 % | ✅ | 440 | [Synertek](synertek.md) | [`teamtailor`](ats-teamtailor.md) | 10 | 80 % | 100 % | ✅ |
443 | [Technica Mining](technica_mining.md) | [`breezy`](ats-breezy.md) | 10 | 0 % | 10 % | ✅ | 441 | [Technica Mining](technica_mining.md) | [`breezy`](ats-breezy.md) | 10 | 0 % | 10 % | ✅ |
444 | [Tetrix](tetrix.md) | [`ashby`](ats-ashby.md) | 10 | 100 % | 10 % | ✅ | 442 | [Tetrix](tetrix.md) | [`ashby`](ats-ashby.md) | 10 | 100 % | 10 % | ✅ |
443+| [Ville de Terrebonne](ville_terrebonne.md) | [`njoyn`](ats-njoyn.md) | 10 | 90 % | 0 % | ✅ |
445 | [WPP Media](wppmedia.md) | [`greenhouse`](ats-greenhouse.md) | 10 | 0 % | 100 % | ✅ | 444 | [WPP Media](wppmedia.md) | [`greenhouse`](ats-greenhouse.md) | 10 | 0 % | 100 % | ✅ |
446 | [3 Brasseurs Canada](trois_brasseurs.md) | [`breezy`](ats-breezy.md) | 9 | 67 % | 100 % | ✅ | 445 | [3 Brasseurs Canada](trois_brasseurs.md) | [`breezy`](ats-breezy.md) | 9 | 67 % | 100 % | ✅ |
447 | [act digital](altersolutions.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 9 | 0 % | 100 % | ✅ | 446 | [act digital](altersolutions.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 9 | 0 % | 100 % | ✅ |
@@ -459,6 +458,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
459 | [Framestore](framestore.md) | [`recruitee`](ats-recruitee.md) | 9 | 0 % | 100 % | ✅ | 458 | [Framestore](framestore.md) | [`recruitee`](ats-recruitee.md) | 9 | 0 % | 100 % | ✅ |
460 | [HEC Montréal — corps professoral](hec_montreal_profs.md) | [`taleo_tbe`](ats-taleo_tbe.md) | 9 | 0 % | 100 % | ✅ | 459 | [HEC Montréal — corps professoral](hec_montreal_profs.md) | [`taleo_tbe`](ats-taleo_tbe.md) | 9 | 0 % | 100 % | ✅ |
461 | [Huron](huron.md) | [`workday`](ats-workday.md) | 9 | 100 % | 33 % | ✅ | 460 | [Huron](huron.md) | [`workday`](ats-workday.md) | 9 | 100 % | 33 % | ✅ |
461+| [Investissement Québec](investquebec.md) | [`workday`](ats-workday.md) | 9 | 0 % | 100 % | ✅ |
462 | [J'Excelle](jexcelleinc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 9 | 0 % | 100 % | ✅ | 462 | [J'Excelle](jexcelleinc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 9 | 0 % | 100 % | ✅ |
463 | [JG Rive-Sud (GFS)](jgrivesud.md) | [`workday`](ats-workday.md) | 9 | 67 % | 100 % | ✅ | 463 | [JG Rive-Sud (GFS)](jgrivesud.md) | [`workday`](ats-workday.md) | 9 | 67 % | 100 % | ✅ |
464 | [LGT](lgt1.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 9 | 0 % | 100 % | ✅ | 464 | [LGT](lgt1.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 9 | 0 % | 100 % | ✅ |
@@ -538,7 +538,6 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
538 | [Trackforce](tracktik.md) | [`lever`](ats-lever.md) | 7 | 29 % | 71 % | ✅ | 538 | [Trackforce](tracktik.md) | [`lever`](ats-lever.md) | 7 | 29 % | 71 % | ✅ |
539 | [Trigyn Technologies](trigyntechnologies1.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 7 | 0 % | 100 % | ✅ | 539 | [Trigyn Technologies](trigyntechnologies1.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 7 | 0 % | 100 % | ✅ |
540 | [Turner & Townsend](turnertownsend.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 7 | 29 % | 100 % | ✅ | 540 | [Turner & Townsend](turnertownsend.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 7 | 29 % | 100 % | ✅ |
541−| [Ville de Mirabel](ville_mirabel.md) | [`njoyn`](ats-njoyn.md) | 7 | 86 % | 0 % | ✅ |
542 | [Weir Group](weir.md) | [`workday`](ats-workday.md) | 7 | 29 % | 57 % | ✅ | 541 | [Weir Group](weir.md) | [`workday`](ats-workday.md) | 7 | 29 % | 57 % | ✅ |
543 | [Accedian Networks](accediannetworks.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 6 | 0 % | 100 % | ✅ | 542 | [Accedian Networks](accediannetworks.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 6 | 0 % | 100 % | ✅ |
544 | [Also Recrutement - Carrière](alsorecrutement.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 6 | 17 % | 50 % | ✅ | 543 | [Also Recrutement - Carrière](alsorecrutement.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 6 | 17 % | 50 % | ✅ |
@@ -629,6 +628,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
629 | [Toon Boom Animation](toonboom.md) | [`bamboohr`](ats-bamboohr.md) | 5 | 0 % | 100 % | ✅ | 628 | [Toon Boom Animation](toonboom.md) | [`bamboohr`](ats-bamboohr.md) | 5 | 0 % | 100 % | ✅ |
630 | [Vaco](vaco.md) | [`greenhouse`](ats-greenhouse.md) | 5 | 80 % | 100 % | ✅ | 629 | [Vaco](vaco.md) | [`greenhouse`](ats-greenhouse.md) | 5 | 80 % | 100 % | ✅ |
631 | [Valmet](valmet.md) | [`workday`](ats-workday.md) | 5 | 0 % | 80 % | ✅ | 630 | [Valmet](valmet.md) | [`workday`](ats-workday.md) | 5 | 0 % | 80 % | ✅ |
631+| [Ville de Mirabel](ville_mirabel.md) | [`njoyn`](ats-njoyn.md) | 5 | 80 % | 0 % | ✅ |
632 | [VOXDATA](voxdata.md) | [`breezy`](ats-breezy.md) | 5 | 100 % | 100 % | ✅ | 632 | [VOXDATA](voxdata.md) | [`breezy`](ats-breezy.md) | 5 | 100 % | 100 % | ✅ |
633 | [Warner Bros. Discovery (WB Games Montréal)](warnerbros.md) | [`workday`](ats-workday.md) | 5 | 0 % | 100 % | ✅ | 633 | [Warner Bros. Discovery (WB Games Montréal)](warnerbros.md) | [`workday`](ats-workday.md) | 5 | 0 % | 100 % | ✅ |
634 | [4Refuel](4refuel.md) | [`dayforce`](ats-dayforce.md) | 4 | 25 % | 100 % | ✅ | 634 | [4Refuel](4refuel.md) | [`dayforce`](ats-dayforce.md) | 4 | 25 % | 100 % | ✅ |
@@ -696,6 +696,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
696 | [Outpost VFX](outpostvfx.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 4 | 0 % | 100 % | ✅ | 696 | [Outpost VFX](outpostvfx.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 4 | 0 % | 100 % | ✅ |
697 | [Pivot + Edge](pivotandedge.md) | [`recruitee`](ats-recruitee.md) | 4 | 0 % | 100 % | ✅ | 697 | [Pivot + Edge](pivotandedge.md) | [`recruitee`](ats-recruitee.md) | 4 | 0 % | 100 % | ✅ |
698 | [PlayStation Global](sonyinteractiveentertainmentglobal.md) | [`greenhouse`](ats-greenhouse.md) | 4 | 0 % | 100 % | ✅ | 698 | [PlayStation Global](sonyinteractiveentertainmentglobal.md) | [`greenhouse`](ats-greenhouse.md) | 4 | 0 % | 100 % | ✅ |
699+| [Sel Windsor (Mines Seleine)](selwindsor.md) | [`ultipro`](ats-ultipro.md) | 4 | 0 % | 100 % | ✅ |
699 | [Sobeys](sobeys.md) | [`dayforce`](ats-dayforce.md) | 4 | 0 % | 100 % | ✅ | 700 | [Sobeys](sobeys.md) | [`dayforce`](ats-dayforce.md) | 4 | 0 % | 100 % | ✅ |
700 | [Trigone](trigone.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 4 | 0 % | 100 % | ✅ | 701 | [Trigone](trigone.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 4 | 0 % | 100 % | ✅ |
701 | [Turning Point Brands Canada](recreationmarketing.md) | [`jazzhr`](ats-jazzhr.md) | 4 | 0 % | 100 % | ✅ | 702 | [Turning Point Brands Canada](recreationmarketing.md) | [`jazzhr`](ats-jazzhr.md) | 4 | 0 % | 100 % | ✅ |
@@ -775,10 +776,8 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
775 | [Remco](remco.md) | [`dayforce`](ats-dayforce.md) | 3 | 0 % | 100 % | ✅ | 776 | [Remco](remco.md) | [`dayforce`](ats-dayforce.md) | 3 | 0 % | 100 % | ✅ |
776 | [Sales Consultant Montreal](miele.md) | [`workday`](ats-workday.md) | 3 | 100 % | 100 % | ✅ | 777 | [Sales Consultant Montreal](miele.md) | [`workday`](ats-workday.md) | 3 | 100 % | 100 % | ✅ |
777 | [Sbdinc](sbdinc.md) | [`workday`](ats-workday.md) | 3 | 67 % | 100 % | ✅ | 778 | [Sbdinc](sbdinc.md) | [`workday`](ats-workday.md) | 3 | 67 % | 100 % | ✅ |
778−| [Sel Windsor (Mines Seleine)](selwindsor.md) | [`ultipro`](ats-ultipro.md) | 3 | 0 % | 100 % | ✅ |
779 | [Serve Robotics](serverobotics.md) | [`ashby`](ats-ashby.md) | 3 | 100 % | 0 % | ✅ | 779 | [Serve Robotics](serverobotics.md) | [`ashby`](ats-ashby.md) | 3 | 100 % | 0 % | ✅ |
780 | [Shearwater](shearwater.md) | [`greenhouse`](ats-greenhouse.md) | 3 | 0 % | 100 % | ✅ | 780 | [Shearwater](shearwater.md) | [`greenhouse`](ats-greenhouse.md) | 3 | 0 % | 100 % | ✅ |
781−| [Signifly](signifly.md) | [`recruitee`](ats-recruitee.md) | 3 | 0 % | 0 % | ✅ |
782 | [Souffletmalt](souffletmalt.md) | [`dayforce`](ats-dayforce.md) | 3 | 67 % | 100 % | ✅ | 781 | [Souffletmalt](souffletmalt.md) | [`dayforce`](ats-dayforce.md) | 3 | 67 % | 100 % | ✅ |
783 | [Squeeze Studio Animation](squeezestudio.md) | [`recruitee`](ats-recruitee.md) | 3 | 0 % | 67 % | ✅ | 782 | [Squeeze Studio Animation](squeezestudio.md) | [`recruitee`](ats-recruitee.md) | 3 | 0 % | 67 % | ✅ |
784 | [Sun Gro Horticulture](sungrohorticulture.md) | [`jazzhr`](ats-jazzhr.md) | 3 | 0 % | 100 % | ✅ | 783 | [Sun Gro Horticulture](sungrohorticulture.md) | [`jazzhr`](ats-jazzhr.md) | 3 | 0 % | 100 % | ✅ |
@@ -821,6 +820,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
821 | [CWP Energy](mcgillstlaurent.md) | [`jazzhr`](ats-jazzhr.md) | 2 | 0 % | 100 % | ✅ | 820 | [CWP Energy](mcgillstlaurent.md) | [`jazzhr`](ats-jazzhr.md) | 2 | 0 % | 100 % | ✅ |
822 | [Databricks](databricks.md) | [`greenhouse`](ats-greenhouse.md) | 2 | 0 % | 100 % | ✅ | 821 | [Databricks](databricks.md) | [`greenhouse`](ats-greenhouse.md) | 2 | 0 % | 100 % | ✅ |
823 | [Deep Sky](deepsky.md) | [`lever`](ats-lever.md) | 2 | 0 % | 100 % | ✅ | 822 | [Deep Sky](deepsky.md) | [`lever`](ats-lever.md) | 2 | 0 % | 100 % | ✅ |
823+| [Dentons](dentons.md) | [`successfactors`](ats-successfactors.md) | 2 | 100 % | 0 % | ✅ |
824 | [DONTNOD](dontnod.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 2 | 0 % | 100 % | ✅ | 824 | [DONTNOD](dontnod.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 2 | 0 % | 100 % | ✅ |
825 | [Dxctechnology](dxctechnology.md) | [`workday`](ats-workday.md) | 2 | 0 % | 100 % | ✅ | 825 | [Dxctechnology](dxctechnology.md) | [`workday`](ats-workday.md) | 2 | 0 % | 100 % | ✅ |
826 | [East Penn Canada](eastpenn.md) | [`dayforce`](ats-dayforce.md) | 2 | 0 % | 100 % | ✅ | 826 | [East Penn Canada](eastpenn.md) | [`dayforce`](ats-dayforce.md) | 2 | 0 % | 100 % | ✅ |
@@ -835,7 +835,6 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
835 | [FZ Engineering](fzengineering.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 2 | 0 % | 100 % | ✅ | 835 | [FZ Engineering](fzengineering.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 2 | 0 % | 100 % | ✅ |
836 | [Gategroup](gategroup.md) | [`workday`](ats-workday.md) | 2 | 50 % | 100 % | ✅ | 836 | [Gategroup](gategroup.md) | [`workday`](ats-workday.md) | 2 | 50 % | 100 % | ✅ |
837 | [General Dynamics Missions System International](gdmsi.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 2 | 50 % | 100 % | ✅ | 837 | [General Dynamics Missions System International](gdmsi.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 2 | 50 % | 100 % | ✅ |
838−| [Granit Design](granit_design.md) | [`dayforce`](ats-dayforce.md) | 2 | 0 % | 100 % | ✅ |
839 | [Hinge Health](hinge_health.md) | [`ashby`](ats-ashby.md) | 2 | 100 % | 100 % | ✅ | 838 | [Hinge Health](hinge_health.md) | [`ashby`](ats-ashby.md) | 2 | 100 % | 100 % | ✅ |
840 | [HireHawk](hirehawk.md) | [`workable`](ats-workable.md) | 2 | 50 % | 100 % | ✅ | 839 | [HireHawk](hirehawk.md) | [`workable`](ats-workable.md) | 2 | 50 % | 100 % | ✅ |
841 | [HP](hp.md) | [`workday`](ats-workday.md) | 2 | 100 % | 100 % | ✅ | 840 | [HP](hp.md) | [`workday`](ats-workday.md) | 2 | 100 % | 100 % | ✅ |
@@ -937,7 +936,6 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
937 | [Connor, Clark & Lunn Private Capital Ltd.](pcm.md) | [`greenhouse`](ats-greenhouse.md) | 1 | 100 % | 100 % | ✅ | 936 | [Connor, Clark & Lunn Private Capital Ltd.](pcm.md) | [`greenhouse`](ats-greenhouse.md) | 1 | 100 % | 100 % | ✅ |
938 | [Consultdss](consultdss.md) | [`recruitee`](ats-recruitee.md) | 1 | 0 % | 100 % | ✅ | 937 | [Consultdss](consultdss.md) | [`recruitee`](ats-recruitee.md) | 1 | 0 % | 100 % | ✅ |
939 | [Cooperrentsequip](cooperrentsequip.md) | [`dayforce`](ats-dayforce.md) | 1 | 0 % | 100 % | ✅ | 938 | [Cooperrentsequip](cooperrentsequip.md) | [`dayforce`](ats-dayforce.md) | 1 | 0 % | 100 % | ✅ |
940−| [Dentons](dentons_europe.md) | [`workable`](ats-workable.md) | 1 | 100 % | 100 % | ✅ |
941 | [DEPT®](dept.md) | [`greenhouse`](ats-greenhouse.md) | 1 | 100 % | 100 % | ✅ | 939 | [DEPT®](dept.md) | [`greenhouse`](ats-greenhouse.md) | 1 | 100 % | 100 % | ✅ |
942 | [DiliTrust](dilitrust.md) | [`lever`](ats-lever.md) | 1 | 0 % | 100 % | ✅ | 940 | [DiliTrust](dilitrust.md) | [`lever`](ats-lever.md) | 1 | 0 % | 100 % | ✅ |
943 | [DIMENSION COMPOSITE INC](dimensioncompositeinc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 1 | 0 % | 100 % | ✅ | 941 | [DIMENSION COMPOSITE INC](dimensioncompositeinc.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 1 | 0 % | 100 % | ✅ |
@@ -962,6 +960,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
962 | [Gng](gng.md) | [`dayforce`](ats-dayforce.md) | 1 | 0 % | 100 % | ✅ | 960 | [Gng](gng.md) | [`dayforce`](ats-dayforce.md) | 1 | 0 % | 100 % | ✅ |
963 | [Goalcast](goalcast.md) | [`greenhouse`](ats-greenhouse.md) | 1 | 0 % | 100 % | ✅ | 961 | [Goalcast](goalcast.md) | [`greenhouse`](ats-greenhouse.md) | 1 | 0 % | 100 % | ✅ |
964 | [GoLogic](gologic.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 1 | 0 % | 100 % | ✅ | 962 | [GoLogic](gologic.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 1 | 0 % | 100 % | ✅ |
963+| [Granit Design](granit_design.md) | [`dayforce`](ats-dayforce.md) | 1 | 0 % | 100 % | ✅ |
965 | [Groupe BC2](bc2.md) | [`bamboohr`](ats-bamboohr.md) | 1 | 0 % | 100 % | ✅ | 964 | [Groupe BC2](bc2.md) | [`bamboohr`](ats-bamboohr.md) | 1 | 0 % | 100 % | ✅ |
966 | [GUS](gus.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 1 | 0 % | 100 % | ✅ | 965 | [GUS](gus.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 1 | 0 % | 100 % | ✅ |
967 | [Havenpoint Health](havenpoint_health.md) | [`lever`](ats-lever.md) | 1 | 0 % | 100 % | ✅ | 966 | [Havenpoint Health](havenpoint_health.md) | [`lever`](ats-lever.md) | 1 | 0 % | 100 % | ✅ |
@@ -1026,6 +1025,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
1026 | [SharkNinja](sharkninjaoperatingllc.md) | [`greenhouse`](ats-greenhouse.md) | 1 | 100 % | 100 % | ✅ | 1025 | [SharkNinja](sharkninjaoperatingllc.md) | [`greenhouse`](ats-greenhouse.md) | 1 | 100 % | 100 % | ✅ |
1027 | [Shearwater Aerospace](shearwater_aerospace.md) | [`breezy`](ats-breezy.md) | 1 | 0 % | 100 % | ✅ | 1026 | [Shearwater Aerospace](shearwater_aerospace.md) | [`breezy`](ats-breezy.md) | 1 | 0 % | 100 % | ✅ |
1028 | [Siemens Gamesa Certified Wind Turbine Troubleshooters](gevgroupltd.md) | [`recruitee`](ats-recruitee.md) | 1 | 0 % | 100 % | ✅ | 1027 | [Siemens Gamesa Certified Wind Turbine Troubleshooters](gevgroupltd.md) | [`recruitee`](ats-recruitee.md) | 1 | 0 % | 100 % | ✅ |
1028+| [Signifly](signifly.md) | [`recruitee`](ats-recruitee.md) | 1 | 0 % | 0 % | ✅ |
1029 | [Smucker](smucker.md) | [`workday`](ats-workday.md) | 1 | 100 % | 100 % | ✅ | 1029 | [Smucker](smucker.md) | [`workday`](ats-workday.md) | 1 | 100 % | 100 % | ✅ |
1030 | [Snowed In Studios](snowed_in_studios_3.md) | [`workable`](ats-workable.md) | 1 | 100 % | 100 % | ✅ | 1030 | [Snowed In Studios](snowed_in_studios_3.md) | [`workable`](ats-workable.md) | 1 | 100 % | 100 % | ✅ |
1031 | [Sparkgrid](sparkgrid.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 1 | 0 % | 100 % | ✅ | 1031 | [Sparkgrid](sparkgrid.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 1 | 0 % | 100 % | ✅ |
@@ -1080,6 +1080,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
1080 | [CSN Collision](csncollision.md) | [`workable`](ats-workable.md) | 0 | — | — | ✅ | 1080 | [CSN Collision](csncollision.md) | [`workable`](ats-workable.md) | 0 | — | — | ✅ |
1081 | [Culligan Quench](quenchwater.md) | [`lever`](ats-lever.md) | 0 | — | — | ✅ | 1081 | [Culligan Quench](quenchwater.md) | [`lever`](ats-lever.md) | 0 | — | — | ✅ |
1082 | [Delos Data](delos_data.md) | [`ashby`](ats-ashby.md) | 0 | — | — | ✅ | 1082 | [Delos Data](delos_data.md) | [`ashby`](ats-ashby.md) | 0 | — | — | ✅ |
1083+| [Dentons](dentons_europe.md) | [`workable`](ats-workable.md) | 0 | — | — | ✅ |
1083 | [DropGenie](drop_genie.md) | [`breezy`](ats-breezy.md) | 0 | — | — | ✅ | 1084 | [DropGenie](drop_genie.md) | [`breezy`](ats-breezy.md) | 0 | — | — | ✅ |
1084 | [Echodyne Corp](echodynecorp.md) | [`greenhouse`](ats-greenhouse.md) | 0 | — | — | ✅ | 1085 | [Echodyne Corp](echodynecorp.md) | [`greenhouse`](ats-greenhouse.md) | 0 | — | — | ✅ |
1085 | [Edelman Financial Engines, LLC](edelmanfinancialenginesllc.md) | [`greenhouse`](ats-greenhouse.md) | 0 | — | — | ✅ | 1086 | [Edelman Financial Engines, LLC](edelmanfinancialenginesllc.md) | [`greenhouse`](ats-greenhouse.md) | 0 | — | — | ✅ |
modified docs/connecteurs/ats-successfactors.md +15 −14
@@ -4,15 +4,15 @@ Job·Ka — Groupe KA
4 Auteur : Simon-Pierre Boucher 4 Auteur : Simon-Pierre Boucher
5 Contact : contact@spboucher.ai 5 Contact : contact@spboucher.ai
6 Fichier : docs/connecteurs/ats-successfactors.md 6 Fichier : docs/connecteurs/ats-successfactors.md
7−Rôle : Fiche plateforme ATS successfactors — mécanique partagée + tableau des 11 tenants 7+Rôle : Fiche plateforme ATS successfactors — mécanique partagée + tableau des 12 tenants
8−Généré : 2026-09-21 18:06 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER, 8+Généré : 2026-10-06 10:15 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER,
9 relancer le script pour régénérer. 9 relancer le script pour régénérer.
10 ============================================================================= 10 =============================================================================
11 --> 11 -->
12 12
13 # Plateforme ATS `successfactors` 13 # Plateforme ATS `successfactors`
14 14
15−**11 employeurs connectés** via cette plateforme — **1451 offres actives**. Module partagé : `jobka/connectors/successfactors.py` ; un employeur = une sous-classe d'environ 10 lignes. 15+**12 employeurs connectés** via cette plateforme — **1663 offres actives**. Module partagé : `jobka/connectors/successfactors.py` ; un employeur = une sous-classe d'environ 10 lignes.
16 16
17 ## Description & mécanique 17 ## Description & mécanique
18 18
@@ -38,17 +38,18 @@ Généré : 2026-09-21 18:06 EDT par scripts/gen_connector_docs.py — NE PAS
38 38
39 | Employeur | Actives | Salaire | GPS | Mode | Dernier sync | OK | 39 | Employeur | Actives | Salaire | GPS | Mode | Dernier sync | OK |
40 |---|---|---|---|---|---|---| 40 |---|---|---|---|---|---|---|
41−| [Bombardier](bombardier.md) | 741 | 0 % | 100 % | 86 % | 2026-09-21 16:40 | ✅ | 41+| [Bombardier](bombardier.md) | 846 | 0 % | 100 % | 74 % | 2026-10-06 10:10 | ✅ |
42−| [Alstom](alstom.md) | 237 | 7 % | 100 % | 3 % | 2026-09-21 16:36 | ✅ | 42+| [Alstom](alstom.md) | 245 | 8 % | 99 % | 3 % | 2026-10-06 10:14 | ✅ |
43−| [Cascades](cascades.md) | 108 | 74 % | 100 % | 19 % | 2026-09-21 16:45 | ✅ | 43+| [Hydro-Québec](hydroquebec.md) | 142 | 75 % | 85 % | 0 % | 2026-10-06 08:25 | ✅ |
44−| [Deloitte Canada](deloitte.md) | 108 | 98 % | 100 % | 100 % | 2026-09-21 16:52 | ✅ | 44+| [Deloitte Canada](deloitte.md) | 115 | 98 % | 100 % | 100 % | 2026-10-06 08:08 | ✅ |
45−| [TELUS](telus.md) | 66 | 0 % | 100 % | 3 % | 2026-09-21 17:37 | ✅ | 45+| [Cascades](cascades.md) | 93 | 75 % | 100 % | 16 % | 2026-10-06 07:55 | ✅ |
46−| [Hydro-Québec](hydroquebec.md) | 53 | 34 % | 77 % | 0 % | 2026-09-21 17:12 | ✅ | 46+| [TELUS](telus.md) | 60 | 0 % | 100 % | 3 % | 2026-10-06 08:50 | ✅ |
47−| [Kiewit (Ganotec)](kiewit_ganotec.md) | 52 | 0 % | 100 % | 0 % | 2026-09-21 17:19 | ✅ | 47+| [Kiewit (Ganotec)](kiewit_ganotec.md) | 57 | 0 % | 100 % | 0 % | 2026-10-06 08:28 | ✅ |
48−| [Domtar](domtar.md) | 29 | 0 % | 100 % | 0 % | 2026-09-21 16:53 | ✅ | 48+| [VIA Rail Canada](via_rail.md) | 34 | 0 % | 100 % | 0 % | 2026-10-06 08:53 | ✅ |
49−| [VIA Rail Canada](via_rail.md) | 24 | 0 % | 100 % | 0 % | 2026-09-21 17:40 | ✅ | 49+| [Domtar](domtar.md) | 31 | 0 % | 100 % | 0 % | 2026-10-06 08:10 | ✅ |
50−| [Énergir](energir.md) | 18 | 0 % | 100 % | 6 % | 2026-09-21 16:56 | ✅ | 50+| [Énergir](energir.md) | 28 | 0 % | 100 % | 4 % | 2026-10-06 08:12 | ✅ |
51−| [Canada Vie](canada_vie.md) | 15 | 0 % | 100 % | 0 % | 2026-09-21 16:41 | ✅ | 51+| [Canada Vie](canada_vie.md) | 10 | 0 % | 90 % | 0 % | 2026-10-06 10:11 | ✅ |
52+| [Dentons](dentons.md) | 2 | 100 % | 0 % | 0 % | 2026-10-06 10:14 | ✅ |
52 53
53 ## Licence / conformité 54 ## Licence / conformité
54 55
modified docs/connecteurs/ats-workable.md +73 −73
@@ -5,14 +5,14 @@ Auteur : Simon-Pierre Boucher
5 Contact : contact@spboucher.ai 5 Contact : contact@spboucher.ai
6 Fichier : docs/connecteurs/ats-workable.md 6 Fichier : docs/connecteurs/ats-workable.md
7 Rôle : Fiche plateforme ATS workable — mécanique partagée + tableau des 71 tenants 7 Rôle : Fiche plateforme ATS workable — mécanique partagée + tableau des 71 tenants
8−Généré : 2026-10-02 14:03 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER, 8+Généré : 2026-10-06 10:15 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER,
9 relancer le script pour régénérer. 9 relancer le script pour régénérer.
10 ============================================================================= 10 =============================================================================
11 --> 11 -->
12 12
13 # Plateforme ATS `workable` 13 # Plateforme ATS `workable`
14 14
15−**71 employeurs connectés** via cette plateforme — **1820 offres actives**. Module partagé : `jobka/connectors/workable.py` ; un employeur = une sous-classe d'environ 10 lignes. 15+**71 employeurs connectés** via cette plateforme — **1850 offres actives**. Module partagé : `jobka/connectors/workable.py` ; un employeur = une sous-classe d'environ 10 lignes.
16 16
17 ## Description & mécanique 17 ## Description & mécanique
18 18
@@ -39,77 +39,77 @@ Généré : 2026-10-02 14:03 EDT par scripts/gen_connector_docs.py — NE PAS
39 39
40 | Employeur | Actives | Salaire | GPS | Mode | Dernier sync | OK | 40 | Employeur | Actives | Salaire | GPS | Mode | Dernier sync | OK |
41 |---|---|---|---|---|---|---| 41 |---|---|---|---|---|---|---|
42−| [Solution SFT](solution_sft.md) | 835 | 26 % | 100 % | 7 % | 2026-10-02 13:31 | ✅ | 42+| [Solution SFT](solution_sft.md) | 843 | 26 % | 100 % | 7 % | 2026-10-06 08:48 | ✅ |
43−| [TEHORA](tehora.md) | 395 | 0 % | 100 % | 30 % | 2026-10-02 13:34 | ✅ | 43+| [TEHORA](tehora.md) | 409 | 0 % | 100 % | 29 % | 2026-10-06 08:50 | ✅ |
44−| [Genetec](genetec_inc.md) | 93 | 0 % | 100 % | 15 % | 2026-10-02 14:03 | ✅ | 44+| [Genetec](genetec_inc.md) | 96 | 0 % | 100 % | 15 % | 2026-10-06 08:15 | ✅ |
45−| [ApexFocusGroup](afg.md) | 46 | 0 % | 100 % | 100 % | 2026-10-02 12:26 | ✅ | 45+| [ApexFocusGroup](afg.md) | 46 | 0 % | 100 % | 100 % | 2026-10-06 10:04 | ✅ |
46−| [Valsoft](valsoft_corp.md) | 44 | 5 % | 100 % | 16 % | 2026-10-02 13:38 | ✅ | 46+| [Valsoft](valsoft_corp.md) | 43 | 5 % | 100 % | 19 % | 2026-10-06 08:53 | ✅ |
47−| [SOGECLAIR](sogeclair.md) | 41 | 2 % | 100 % | 2 % | 2026-10-02 13:31 | ✅ | 47+| [SOGECLAIR](sogeclair.md) | 42 | 2 % | 100 % | 2 % | 2026-10-06 08:48 | ✅ |
48−| [Exportation et développement Canada (EDC)](export_development_canada.md) | 37 | 97 % | 100 % | 0 % | 2026-10-02 12:49 | ✅ | 48+| [Exportation et développement Canada (EDC)](export_development_canada.md) | 34 | 97 % | 100 % | 0 % | 2026-10-06 08:13 | ✅ |
49−| [Sapsol Technologies Inc](sapsol_technologies_inc_7.md) | 33 | 0 % | 100 % | 42 % | 2026-10-02 13:29 | ✅ | 49+| [Sapsol Technologies Inc](sapsol_technologies_inc_7.md) | 34 | 0 % | 100 % | 41 % | 2026-10-06 08:45 | ✅ |
50−| [Tecsys](tecsys.md) | 29 | 0 % | 100 % | 93 % | 2026-10-02 13:34 | ✅ | 50+| [Tecsys](tecsys.md) | 33 | 0 % | 100 % | 88 % | 2026-10-06 08:50 | ✅ |
51−| [Side (PTW)](sideinc.md) | 24 | 0 % | 100 % | 58 % | 2026-10-02 13:30 | ✅ | 51+| [Keywords Studios](keywords_intl1.md) | 22 | 95 % | 100 % | 41 % | 2026-10-06 08:28 | ✅ |
52−| [Baro RH](barorh.md) | 22 | 0 % | 100 % | 5 % | 2026-10-02 12:30 | ✅ | 52+| [Baro RH](barorh.md) | 22 | 0 % | 100 % | 5 % | 2026-10-06 10:08 | ✅ |
53−| [Keywords Studios](keywords_intl1.md) | 20 | 95 % | 100 % | 35 % | 2026-10-02 13:17 | ✅ | 53+| [Side (PTW)](sideinc.md) | 19 | 0 % | 100 % | 68 % | 2026-10-06 08:47 | ✅ |
54−| [Lamour](lamour.md) | 18 | 0 % | 100 % | 6 % | 2026-10-02 13:17 | ✅ | 54+| [Lamour](lamour.md) | 18 | 0 % | 100 % | 6 % | 2026-10-06 08:28 | ✅ |
55−| [Starlink Aviation](starlink_aviation.md) | 13 | 0 % | 100 % | 15 % | 2026-10-02 13:32 | ✅ | 55+| [Starlink Aviation](starlink_aviation.md) | 13 | 0 % | 100 % | 15 % | 2026-10-06 08:48 | ✅ |
56−| [Rentokil Initial](rentokil_initial.md) | 12 | 75 % | 100 % | 8 % | 2026-10-02 13:27 | ✅ | 56+| [Evolving Web](evolving_web.md) | 12 | 0 % | 100 % | 25 % | 2026-10-06 08:13 | ✅ |
57−| [Aviso Wealth](aviso.md) | 12 | 100 % | 100 % | 0 % | 2026-10-02 12:30 | ✅ | 57+| [Rentokil Initial](rentokil_initial.md) | 12 | 75 % | 100 % | 8 % | 2026-10-06 08:43 | ✅ |
58−| [Egon Zehnder](ezrecruiting.md) | 12 | 0 % | 100 % | 0 % | 2026-10-02 12:49 | ✅ | 58+| [Egon Zehnder](ezrecruiting.md) | 12 | 0 % | 100 % | 0 % | 2026-10-06 08:13 | ✅ |
59−| [Evolving Web](evolving_web.md) | 10 | 0 % | 100 % | 10 % | 2026-10-02 12:49 | ✅ | 59+| [Aviso Wealth](aviso.md) | 11 | 100 % | 100 % | 0 % | 2026-10-06 10:08 | ✅ |
60−| [FLO (AddÉnergie)](flo_addenergie.md) | 10 | 0 % | 100 % | 20 % | 2026-10-02 12:49 | ✅ | 60+| [FLO (AddÉnergie)](flo_addenergie.md) | 10 | 0 % | 100 % | 20 % | 2026-10-06 08:14 | ✅ |
61−| [LIDD Consultants](lidd.md) | 8 | 0 % | 100 % | 0 % | 2026-10-02 13:18 | ✅ | 61+| [LIDD Consultants](lidd.md) | 8 | 0 % | 100 % | 0 % | 2026-10-06 08:29 | ✅ |
62−| [Sweat Pants Agency](sweat_pants_agency.md) | 8 | 25 % | 100 % | 100 % | 2026-10-02 13:33 | ✅ | 62+| [Mila — Institut québécois d'IA](mila_2.md) | 8 | 0 % | 100 % | 0 % | 2026-10-06 08:36 | ✅ |
63−| [Nuovo Photography](nuovophotography.md) | 7 | 29 % | 100 % | 0 % | 2026-10-02 13:23 | ✅ | 63+| [Sweat Pants Agency](sweat_pants_agency.md) | 8 | 25 % | 100 % | 100 % | 2026-10-06 08:49 | ✅ |
64−| [Botpress](botpress.md) | 6 | 0 % | 100 % | 0 % | 2026-10-02 12:32 | ✅ | 64+| [Nuovo Photography](nuovophotography.md) | 7 | 29 % | 100 % | 0 % | 2026-10-06 08:38 | ✅ |
65−| [Doman Building Materials Group Ltd](doman_building_materials.md) | 6 | 0 % | 100 % | 50 % | 2026-10-02 12:45 | ✅ | 65+| [Botpress](botpress.md) | 6 | 0 % | 100 % | 0 % | 2026-10-06 10:10 | ✅ |
66−| [Delmar International](delmar_international_inc.md) | 5 | 0 % | 100 % | 0 % | 2026-10-02 12:44 | ✅ | 66+| [Delmar International](delmar_international_inc.md) | 6 | 0 % | 100 % | 0 % | 2026-10-06 08:08 | ✅ |
67−| [John Brooks Company](john_brooks_company.md) | 5 | 20 % | 100 % | 40 % | 2026-10-02 13:17 | ✅ | 67+| [Doman Building Materials Group Ltd](doman_building_materials.md) | 6 | 0 % | 100 % | 50 % | 2026-10-06 08:10 | ✅ |
68−| [Unit8](unit8.md) | 4 | 0 % | 100 % | 50 % | 2026-10-02 13:37 | ✅ | 68+| [John Brooks Company](john_brooks_company.md) | 5 | 20 % | 100 % | 40 % | 2026-10-06 08:28 | ✅ |
69−| [Flatgigs](flatgigs.md) | 4 | 0 % | 100 % | 0 % | 2026-10-02 12:49 | ✅ | 69+| [Unit8](unit8.md) | 4 | 0 % | 100 % | 50 % | 2026-10-06 08:52 | ✅ |
70−| [Eminent Valet](eminent_valet.md) | 3 | 100 % | 100 % | 0 % | 2026-10-02 12:48 | ✅ | 70+| [Flatgigs](flatgigs.md) | 4 | 0 % | 100 % | 0 % | 2026-10-06 08:14 | ✅ |
71−| [Flinks](flinks.md) | 3 | 0 % | 100 % | 100 % | 2026-10-02 12:49 | ✅ | 71+| [Mindrift](toloka_ai.md) | 4 | 100 % | 100 % | 100 % | 2026-10-06 08:51 | ✅ |
72−| [Mila — Institut québécois d'IA](mila_2.md) | 3 | 0 % | 100 % | 0 % | 2026-10-02 13:21 | ✅ | 72+| [Eminent Valet](eminent_valet.md) | 3 | 100 % | 100 % | 0 % | 2026-10-06 08:12 | ✅ |
73−| [Damotech](damotech.md) | 3 | 0 % | 100 % | 0 % | 2026-10-02 12:44 | ✅ | 73+| [Flinks](flinks.md) | 3 | 0 % | 100 % | 100 % | 2026-10-06 08:14 | ✅ |
74−| [Allucent](allucent.md) | 3 | 0 % | 100 % | 100 % | 2026-10-02 12:27 | ✅ | 74+| [Damotech](damotech.md) | 3 | 0 % | 100 % | 0 % | 2026-10-06 08:08 | ✅ |
75−| [Devoted Studios](devoted_studios_1.md) | 3 | 0 % | 100 % | 100 % | 2026-10-02 12:45 | ✅ | 75+| [Allucent](allucent.md) | 3 | 0 % | 100 % | 100 % | 2026-10-06 10:05 | ✅ |
76−| [Power Factors](power_factors.md) | 3 | 0 % | 100 % | 0 % | 2026-10-02 13:24 | ✅ | 76+| [Devoted Studios](devoted_studios_1.md) | 3 | 0 % | 100 % | 100 % | 2026-10-06 08:09 | ✅ |
77−| [Bardel Entertainment](bardel_entertainment.md) | 2 | 100 % | 100 % | 0 % | 2026-10-02 12:30 | ✅ | 77+| [Power Factors](power_factors.md) | 3 | 0 % | 100 % | 0 % | 2026-10-06 08:39 | ✅ |
78−| [Charlotte Tilbury](charlotte_tilbury.md) | 2 | 0 % | 100 % | 0 % | 2026-10-02 12:40 | ✅ | 78+| [Bardel Entertainment](bardel_entertainment.md) | 2 | 100 % | 100 % | 0 % | 2026-10-06 10:08 | ✅ |
79−| [CTS Foods Brokers](cts_foods_brokers_inc.md) | 2 | 50 % | 100 % | 0 % | 2026-10-02 12:44 | ✅ | 79+| [Charlotte Tilbury](charlotte_tilbury.md) | 2 | 0 % | 100 % | 0 % | 2026-10-06 07:57 | ✅ |
80−| [Financeit](financeit.md) | 2 | 100 % | 100 % | 0 % | 2026-10-02 12:49 | ✅ | 80+| [CTS Foods Brokers](cts_foods_brokers_inc.md) | 2 | 50 % | 100 % | 0 % | 2026-10-06 08:08 | ✅ |
81−| [Acuity Insights](acuity_insights.md) | 2 | 100 % | 100 % | 100 % | 2026-10-02 12:26 | ✅ | 81+| [Financeit](financeit.md) | 2 | 100 % | 100 % | 0 % | 2026-10-06 08:14 | ✅ |
82−| [Dentons](dentons_europe.md) | 2 | 50 % | 100 % | 100 % | 2026-10-02 12:44 | ✅ | 82+| [Andy Transport](andy_transport.md) | 2 | 0 % | 100 % | 0 % | 2026-10-06 10:06 | ✅ |
83−| [HireHawk](hirehawk.md) | 2 | 50 % | 100 % | 100 % | 2026-10-02 13:06 | ✅ | 83+| [HireHawk](hirehawk.md) | 2 | 50 % | 100 % | 100 % | 2026-10-06 08:23 | ✅ |
84−| [Irth Solutions](irth_solutions.md) | 2 | 100 % | 100 % | 100 % | 2026-10-02 13:10 | ✅ | 84+| [Irth Solutions](irth_solutions.md) | 2 | 100 % | 100 % | 100 % | 2026-10-06 08:26 | ✅ |
85−| [Kognitive Sales Solutions](kognitive_sales_solutions.md) | 2 | 50 % | 100 % | 50 % | 2026-10-02 13:17 | ✅ | 85+| [Kognitive Sales Solutions](kognitive_sales_solutions.md) | 2 | 50 % | 100 % | 50 % | 2026-10-06 08:28 | ✅ |
86−| [Liberty Mutual Canada](liberty_mutual_canada.md) | 2 | 0 % | 100 % | 0 % | 2026-10-02 13:18 | ✅ | 86+| [Nuvei](nuvei.md) | 2 | 0 % | 100 % | 50 % | 2026-10-06 08:38 | ✅ |
87−| [Nuvei](nuvei.md) | 2 | 0 % | 100 % | 50 % | 2026-10-02 13:23 | ✅ | 87+| [Stranger Soccer](stranger_soccer_1.md) | 2 | 0 % | 100 % | 0 % | 2026-10-06 08:48 | ✅ |
88−| [Stranger Soccer](stranger_soccer_1.md) | 2 | 0 % | 100 % | 0 % | 2026-10-02 13:32 | ✅ | 88+| [Valard Construction](valard_construction_lp.md) | 2 | 0 % | 100 % | 0 % | 2026-10-06 08:53 | ✅ |
89−| [Mindrift](toloka_ai.md) | 2 | 100 % | 100 % | 100 % | 2026-10-02 13:35 | ✅ | 89+| [Atecna](atecna_montreal.md) | 1 | 0 % | 100 % | 0 % | 2026-10-06 10:06 | ✅ |
90−| [Valard Construction](valard_construction_lp.md) | 2 | 0 % | 100 % | 0 % | 2026-10-02 13:37 | ✅ | 90+| [Charger Logistics](charger_logistics_inc.md) | 1 | 0 % | 100 % | 0 % | 2026-10-06 07:57 | ✅ |
91−| [Atecna](atecna_montreal.md) | 1 | 0 % | 100 % | 0 % | 2026-10-02 12:28 | ✅ | 91+| [Acuity Insights](acuity_insights.md) | 1 | 100 % | 100 % | 100 % | 2026-10-06 10:03 | ✅ |
92−| [Charger Logistics](charger_logistics_inc.md) | 1 | 0 % | 100 % | 0 % | 2026-10-02 12:40 | ✅ | 92+| [Hire Ground Talent](hiregroundtalent.md) | 1 | 0 % | 100 % | 0 % | 2026-10-06 08:23 | ✅ |
93−| [Andy Transport](andy_transport.md) | 1 | 0 % | 100 % | 0 % | 2026-10-02 12:28 | ✅ | 93+| [Intuition Machines, Inc.](imachines.md) | 1 | 0 % | 100 % | 100 % | 2026-10-06 08:25 | ✅ |
94−| [Hire Ground Talent](hiregroundtalent.md) | 1 | 0 % | 100 % | 0 % | 2026-10-02 13:06 | ✅ | 94+| [JoVE](jove.md) | 1 | 0 % | 100 % | 100 % | 2026-10-06 08:28 | ✅ |
95−| [Intuition Machines, Inc.](imachines.md) | 1 | 0 % | 100 % | 100 % | 2026-10-02 13:09 | ✅ | 95+| [Liberty Mutual Canada](liberty_mutual_canada.md) | 1 | 0 % | 100 % | 0 % | 2026-10-06 08:29 | ✅ |
96−| [JoVE](jove.md) | 1 | 0 % | 100 % | 100 % | 2026-10-02 13:17 | ✅ | 96+| [Omilia](omilia_natural_language_solutions_ua_ltd.md) | 1 | 0 % | 100 % | 100 % | 2026-10-06 08:38 | ✅ |
97−| [Omilia](omilia_natural_language_solutions_ua_ltd.md) | 1 | 0 % | 100 % | 100 % | 2026-10-02 13:23 | ✅ | 97+| [Onomatic](onomatic.md) | 1 | 0 % | 100 % | 0 % | 2026-10-06 08:38 | ✅ |
98−| [Onomatic](onomatic.md) | 1 | 0 % | 100 % | 0 % | 2026-10-02 13:23 | ✅ | 98+| [SuperMedic.ca](supermedic.md) | 1 | 100 % | 100 % | 100 % | 2026-10-06 08:49 | ✅ |
99−| [SuperMedic.ca](supermedic.md) | 1 | 100 % | 100 % | 100 % | 2026-10-02 13:33 | ✅ | 99+| [Tristan Fleet](tristan_fleet_1.md) | 1 | 0 % | 100 % | 0 % | 2026-10-06 08:52 | ✅ |
100−| [Tristan Fleet](tristan_fleet_1.md) | 1 | 0 % | 100 % | 0 % | 2026-10-02 13:36 | ✅ | 100+| [WebProps.org](webprops.md) | 1 | 0 % | 100 % | 0 % | 2026-10-06 09:01 | ✅ |
101−| [WebProps.org](webprops.md) | 1 | 0 % | 100 % | 0 % | 2026-10-02 13:41 | ✅ | 101+| [Snowed In Studios](snowed_in_studios_3.md) | 1 | 100 % | 100 % | 100 % | 2026-10-06 08:47 | ✅ |
102−| [Snowed In Studios](snowed_in_studios_3.md) | 1 | 100 % | 100 % | 100 % | 2026-10-02 13:31 | ✅ | 102+| [CSN Collision](csncollision.md) | 0 | — | — | — | 2026-10-06 08:08 | ✅ |
103−| [CSN Collision](csncollision.md) | 0 | — | — | — | 2026-10-02 12:44 | ✅ | 103+| [49 Solutions](x49_solutions_1.md) | 0 | — | — | — | 2026-10-06 09:02 | ✅ |
104−| [49 Solutions](x49_solutions_1.md) | 0 | — | — | — | 2026-10-02 13:42 | ✅ | 104+| [Altom Transport](altom_transport.md) | 0 | — | — | — | 2026-10-06 10:06 | ✅ |
105−| [Altom Transport](altom_transport.md) | 0 | — | — | — | 2026-10-02 12:28 | ✅ | 105+| [Dentons](dentons_europe.md) | 0 | — | — | — | 2026-10-06 10:14 | ✅ |
106−| [FinDev Canada](findevcanada.md) | 0 | — | — | — | 2026-10-02 12:49 | ✅ | 106+| [FinDev Canada](findevcanada.md) | 0 | — | — | — | 2026-10-06 08:14 | ✅ |
107−| [GHGSat](ghgsat.md) | 0 | — | — | — | 2026-10-02 14:03 | ✅ | 107+| [GHGSat](ghgsat.md) | 0 | — | — | — | 2026-10-06 08:15 | ✅ |
108−| [Gunnebo Canada](gunnebo_safe_storage_canada.md) | 0 | — | — | — | 2026-10-02 13:06 | ✅ | 108+| [Gunnebo Canada](gunnebo_safe_storage_canada.md) | 0 | — | — | — | 2026-10-06 08:22 | ✅ |
109−| [Liferaft](liferaft.md) | 0 | — | — | — | 2026-10-02 13:18 | ✅ | 109+| [Liferaft](liferaft.md) | 0 | — | — | — | 2026-10-06 08:29 | ✅ |
110−| [Parallelz](parallelz.md) | 0 | — | — | — | 2026-10-02 13:24 | ✅ | 110+| [Parallelz](parallelz.md) | 0 | — | — | — | 2026-10-06 08:39 | ✅ |
111−| [Quandela](quandela.md) | 0 | — | — | — | 2026-10-02 13:26 | ✅ | 111+| [Quandela](quandela.md) | 0 | — | — | — | 2026-10-06 08:43 | ✅ |
112−| [Sangoma](sangoma_3.md) | 0 | — | — | — | 2026-10-02 13:28 | ✅ | 112+| [Sangoma](sangoma_3.md) | 0 | — | — | — | 2026-10-06 08:45 | ✅ |
113 113
114 ## Licence / conformité 114 ## Licence / conformité
115 115
added docs/connecteurs/dentons.md +109 −0
@@ -0,0 +1,109 @@
1+<!--
2+=============================================================================
3+Job·Ka — Groupe KA
4+Auteur : Simon-Pierre Boucher
5+Contact : contact@spboucher.ai
6+Fichier : docs/connecteurs/dentons.md
7+Rôle : Fiche connecteur — Dentons (employeur direct, ATS successfactors)
8+Généré : 2026-10-06 10:15 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER,
9+ relancer le script pour régénérer.
10+=============================================================================
11+-->
12+
13+# Dentons (`dentons`)
14+
15+**Employeur direct** · Plateforme ATS : [`successfactors`](ats-successfactors.md) · Statut registre : actif · Connecteur : `jobka/connectors/dentons.py`
16+
17+## Description
18+
19+- **Site** : [Dentons](https://www.dentons.com)
20+- **Page carrières** : https://careers.dentons.com
21+- **Secteurs** : Juridique, Conseil
22+- **Région** : Montréal
23+- Offres marquées **« Offre directe »** dans l'app (badge) : la candidature se fait chez l'employeur, jamais via un intermédiaire.
24+
25+## Accès
26+
27+- **Mécanique** : voir la fiche plateforme [`ats-successfactors.md`](ats-successfactors.md) — API JSON publique du site carrières, backend `requests` direct (Scrapfly seulement si indiqué sur la fiche plateforme).
28+- **Identifiants du tenant** (attributs du connecteur) :
29+
30+| Attribut | Valeur |
31+|---|---|
32+| `BASE` | `https://careers.dentons.com` |
33+| `EMPLOYER` | `Dentons` |
34+- **Throttle** : 1.0 s entre requêtes.
35+- **Filtre Québec** : seuls les postes localisés au Québec sont conservés (facette serveur quand l'ATS en offre une, sinon `is_quebec_location` côté client).
36+
37+## Champs → schéma
38+
39+Complétude mesurée sur les **2 offres actives** de la source (base live, 2026-10-06 10:15 EDT).
40+
41+| Champ (`jobs.*`) | Rôle | Complétude |
42+|---|---|---|
43+| `title` — Titre | titre du poste | 100 % |
44+| `employer` — Employeur | nom de l'entreprise | 100 % |
45+| `url` — URL | lien direct vers l'offre originale | 100 % |
46+| `description` — Description | texte complet (HTML nettoyé) | 100 % |
47+| `city` — Ville | municipalité normalisée | 100 % |
48+| `region` — Région | région administrative | 100 % |
49+| `address` — Adresse | adresse du lieu de travail | 0 % |
50+| `postal_code` — Code postal | code postal si publié | 0 % |
51+| `work_mode` — Mode | presentiel / hybride / teletravail | 0 % |
52+| `employment_type` — Type | temps_plein / temps_partiel / … | 0 % |
53+| `salary` — Salaire ($) | bornes numériques normalisées $/h et $/an | 100 % |
54+| `salary_label` — Libellé salaire | texte salarial original | 100 % |
55+| `benefits` — Avantages | avantages sociaux publiés (JSON) | 0 % |
56+| `requirements` — Exigences | scolarité, expérience, langues (JSON) | 100 % |
57+| `date_posted` — Date de parution | ISO 8601 | 100 % |
58+| `date_deadline` — Date limite | date limite pour postuler | 0 % |
59+| `category` — Catégorie | taxonomie interne (TI, Santé, …) | 50 % |
60+| `language` — Langue | fr / en / bilingue (source ou heuristique) | 100 % |
61+| `company_logo` — Logo employeur | URL du logo si exposé par la source | 0 % |
62+| `apply_url` — Candidature | lien de candidature directe | 0 % |
63+| `gps` — GPS | lat/lng (géocodage sans invention) | 0 % |
64+
65+Exemple réel : *Responsable, Comptes fournisseurs* — Montréal · La fourchette salariale pour ce poste est de 75,000 $ à 85,000 $, selon les compétences, l… · parue le 2026-10-04.
66+
67+## Fréquence & budgets
68+
69+- **Cadence** : resynchronisation **horaire** (PM2 `job-ka-sync` = `run.py watch 60`), suivie du géocodage en lot puis de la déduplication inter-sources.
70+- **Throttle** : 1.0 s minimum entre deux requêtes vers la source (`request_delay`).
71+- **Budgets / plafonds (variables d'environnement)** :
72+
73+| Variable | Défaut |
74+|---|---|
75+| `JOBKA_SF_DETAIL_LIMIT` | `150` |
76+- Cache BD des pages détail (`detail_cache`) : le détail d'une offre n'est re-téléchargé que si sa ligne de liste change.
77+
78+## Volumétrie & complétude live
79+
80+*(mesuré le 2026-10-06 10:15 EDT dans `data/jobka.db`)*
81+
82+- **Offres en base** : 2 (dont **2 actives**, 0 masquées comme doublons `dup_of`)
83+- **Salaire** : 2/2 actives (100 %)
84+- **GPS** : 0/2 actives (0 %)
85+- **Mode** : 0/2 actives (0 %)
86+- **Parution** : 2/2 actives (100 %)
87+- **Dernier sync** : 2026-10-06 10:14 — trouvées 2, +0, ~2, -0
88+- **Syncs enregistrés** (`sync_log`) : 2
89+
90+## Erreurs & dépannage
91+
92+Aucune erreur dans `sync_log` pour cette source.
93+
94+- Rejouer un sync isolé : `.venv/bin/python run.py sync dentons` puis inspecter `sync_log` : `sqlite3 data/jobka.db "SELECT * FROM sync_log WHERE source='dentons' ORDER BY ts DESC LIMIT 5;"`
95+- Garde-fous : une source qui retourne ≤ 25 % de sa médiane historique déclenche une alerte et les retraits sont suspendus ; une offre doit manquer 2 syncs consécutifs avant `active=0`.
96+
97+## Licence / conformité
98+
99+**Flux public du site carrières officiel de l'employeur** (API JSON de l'ATS ou HTML rendu serveur) — le même contenu que la page carrière affiche publiquement, prévu pour la diffusion des offres, sans authentification. Chaque offre conserve son URL originale et le bouton « Postuler chez Dentons » renvoie chez l'employeur. Aucune donnée personnelle de candidat n'est collectée. User-Agent identifié `JobKaBot/1.0 (+https://www.job-ka.com; contact@spboucher.ai)` sur les accès directs ; requêtes throttlées et plafonnées par budgets.
100+
101+## Historique
102+
103+**Mission connecteurs du 2026-08-18** — passage de 135 à 217 employeurs directs connectés, de 9 à 17 plateformes ATS, ajout de 3 portails agrégateurs et du canal de dépôt direct :
104+- `fd4bfc8` qualité lieux : rejet des villes hors Québec, bâtiments McGill → Montréal ;
105+- `5a66f48` +59 employeurs (sondage massif d'ATS + détection de pages carrières) ;
106+- `4917d57` 8 nouveaux ATS (Taleo, Njoyn, UltiPro, iCIMS, SuccessFactors, ADP WFN, Digital Recruiters, Workland) + 23 employeurs publics/parapublics ;
107+- `f6e7571` portails Guichet-Emplois, Jobillico, Espresso-Jobs — l'offre directe gagne toujours la canonique (dédup) ;
108+- `744cbfc` badge « Offre directe », stats directes/portails, dépôt direct employeurs ;
109+- `1604ff9` reprise sur coupure WAF Guichet-Emplois (retry + acquis partiel).
modified docs/connecteurs/dentons_europe.md +11 −37
@@ -5,7 +5,7 @@ Auteur : Simon-Pierre Boucher
5 Contact : contact@spboucher.ai 5 Contact : contact@spboucher.ai
6 Fichier : docs/connecteurs/dentons_europe.md 6 Fichier : docs/connecteurs/dentons_europe.md
7 Rôle : Fiche connecteur — Dentons (employeur direct, ATS workable) 7 Rôle : Fiche connecteur — Dentons (employeur direct, ATS workable)
8−Généré : 2026-09-21 18:06 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER, 8+Généré : 2026-10-06 10:15 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER,
9 relancer le script pour régénérer. 9 relancer le script pour régénérer.
10 ============================================================================= 10 =============================================================================
11 --> 11 -->
@@ -16,7 +16,7 @@ Généré : 2026-09-21 18:06 EDT par scripts/gen_connector_docs.py — NE PAS
16 16
17 ## Description 17 ## Description
18 18
19−- **Site** : [Dentons]() 19+- **Site** : [Dentons](https://www.dentons.com)
20 - **Page carrières** : https://apply.workable.com/dentons-europe 20 - **Page carrières** : https://apply.workable.com/dentons-europe
21 - **Secteurs** : Juridique, Conseil 21 - **Secteurs** : Juridique, Conseil
22 - **Région** : Montréal 22 - **Région** : Montréal
@@ -36,33 +36,7 @@ Généré : 2026-09-21 18:06 EDT par scripts/gen_connector_docs.py — NE PAS
36 36
37 ## Champs → schéma 37 ## Champs → schéma
38 38
39−Complétude mesurée sur les **2 offres actives** de la source (base live, 2026-09-21 18:06 EDT). 39+*Aucune offre active en base pour cette source.*
40−
41−| Champ (`jobs.*`) | Rôle | Complétude |
42−|---|---|---|
43−| `title` — Titre | titre du poste | 100 % |
44−| `employer` — Employeur | nom de l'entreprise | 100 % |
45−| `url` — URL | lien direct vers l'offre originale | 100 % |
46−| `description` — Description | texte complet (HTML nettoyé) | 100 % |
47−| `city` — Ville | municipalité normalisée | 100 % |
48−| `region` — Région | région administrative | 100 % |
49−| `address` — Adresse | adresse du lieu de travail | 0 % |
50−| `postal_code` — Code postal | code postal si publié | 0 % |
51−| `work_mode` — Mode | presentiel / hybride / teletravail | 100 % |
52−| `employment_type` — Type | temps_plein / temps_partiel / … | 50 % |
53−| `salary` — Salaire ($) | bornes numériques normalisées $/h et $/an | 50 % |
54−| `salary_label` — Libellé salaire | texte salarial original | 50 % |
55−| `benefits` — Avantages | avantages sociaux publiés (JSON) | 0 % |
56−| `requirements` — Exigences | scolarité, expérience, langues (JSON) | 50 % |
57−| `date_posted` — Date de parution | ISO 8601 | 100 % |
58−| `date_deadline` — Date limite | date limite pour postuler | 0 % |
59−| `category` — Catégorie | taxonomie interne (TI, Santé, …) | 100 % |
60−| `language` — Langue | fr / en / bilingue (source ou heuristique) | 100 % |
61−| `company_logo` — Logo employeur | URL du logo si exposé par la source | 0 % |
62−| `apply_url` — Candidature | lien de candidature directe | 100 % |
63−| `gps` — GPS | lat/lng (géocodage sans invention) | 100 % |
64−
65−Exemple réel : *Global Value Pricing and Project Manager* — Montréal · Salary range: US$80,000–US$160,000 gross annually, depending on experience and qualificati… · parue le 2026-05-06.
66 40
67 ## Fréquence & budgets 41 ## Fréquence & budgets
68 42
@@ -72,15 +46,15 @@ Exemple réel : *Global Value Pricing and Project Manager* — Montréal · Sala
72 46
73 ## Volumétrie & complétude live 47 ## Volumétrie & complétude live
74 48
75−*(mesuré le 2026-09-21 18:06 EDT dans `data/jobka.db`)* 49+*(mesuré le 2026-10-06 10:15 EDT dans `data/jobka.db`)*
76 50
77−- **Offres en base** : 2 (dont **2 actives**, 0 masquées comme doublons `dup_of`) 51+- **Offres en base** : 2 (dont **0 actives**, 0 masquées comme doublons `dup_of`)
78−- **Salaire** : 1/2 actives (50 %) 52+- **Salaire** : 0/0 actives (—)
79−- **GPS** : 2/2 actives (100 %) 53+- **GPS** : 0/0 actives (—)
80−- **Mode** : 2/2 actives (100 %) 54+- **Mode** : 0/0 actives (—)
81−- **Parution** : 2/2 actives (100 %) 55+- **Parution** : 0/0 actives (—)
82−- **Dernier sync** : 2026-09-21 16:52 — trouvées 2, +0, ~0, -0 56+- **Dernier sync** : 2026-10-06 10:14 — trouvées 0, +0, ~0, -1
83−- **Syncs enregistrés** (`sync_log`) : 261 57+- **Syncs enregistrés** (`sync_log`) : 428
84 58
85 ## Erreurs & dépannage 59 ## Erreurs & dépannage
86 60
added jobka/connectors/dentons.py +29 −0
@@ -0,0 +1,29 @@
1+# =============================================================================
2+# Job·Ka — Groupe KA
3+# Auteur : Simon-Pierre Boucher
4+# Contact : contact@spboucher.ai
5+# Fichier : jobka/connectors/dentons.py
6+# Rôle : Connecteur Dentons (portail carrières mondial/Canada) —
7+# SuccessFactors CSB careers.dentons.com, filtre QC
8+# Créé : 2026-10-06 Modifié : 2026-10-06
9+# =============================================================================
10+"""Dentons — portail carrières mondial (SuccessFactors Career Site Builder).
11+
12+Ajouté le 2026-10-06 (mission ka6 dentons_europe) : le board Workable
13+« dentons-europe » (connecteur frère ``dentons_europe``) ne couvre que les
14+publications de Dentons Europe — son unique offre QC historique (un rôle
15+« Global » basé à Montréal) a été dépubliée le 2026-10-06. Les postes
16+réguliers du bureau de Montréal sont publiés ICI, sur careers.dentons.com
17+(SuccessFactors, sitemap urlset ~141 offres mondiales, slugs « -Queb/ » /
18+« -Québ/ ») — 2 offres QC vivantes à l'ajout (paire FR/EN « Responsable,
19+Comptes fournisseurs / Accounts Payable Lead », Montréal). Même variante que
20+pwc 8d150eb : le volume QC de l'employeur vit sur un portail frère — ici un
21+autre ATS, d'où un connecteur distinct plutôt qu'un EXTRA_SITES.
22+"""
23+from .successfactors import SuccessFactorsConnector
24+
25+
26+class DentonsConnector(SuccessFactorsConnector):
27+ source_id = "dentons"
28+ EMPLOYER = "Dentons"
29+ BASE = "https://careers.dentons.com"
modified jobka/connectors/dentons_europe.py +18 −1
@@ -5,8 +5,25 @@
5 # Fichier : jobka/connectors/dentons_europe.py 5 # Fichier : jobka/connectors/dentons_europe.py
6 # Rôle : Connecteur Dentons — workable (org « dentons-europe ») 6 # Rôle : Connecteur Dentons — workable (org « dentons-europe »)
7 # [généré par scripts/gen_connectors.py, flux vérifié le 2026-08-23] 7 # [généré par scripts/gen_connectors.py, flux vérifié le 2026-08-23]
8−# Créé : 2026-08-23 Modifié : 2026-08-23 8+# Créé : 2026-08-23 Modifié : 2026-10-06
9 # ============================================================================= 9 # =============================================================================
10+"""Dentons Europe — board Workable « dentons-europe ».
11+
12+Volume QC structurellement 0-2 (médiane historique 1.0) : ce board est celui
13+de Dentons EUROPE (Pologne, Italie, Tchéquie, Afrique…) — il n'a porté du QC
14+que via des rôles « Global » basés à Montréal. Chronologie 2026-10-06
15+(mission ka6, 43e cas du pattern « volume QC nul ») : la dernière offre QC
16+(1454A1A702 « Global Value Pricing and Project Manager », Montréal, parue
17+2026-05-06) a été DÉPUBLIÉE entre 05:09 et 08:08 EDT (found 1 → 0, missed=1) ;
18+marqueur Workable confirmé live : détail 302 → /oops. Board re-vérifié : 200,
19+64 offres mondiales, 0 lieu CA/QC (multi-lieux et 23 remote inclus),
20+recherche v3 Montreal/Quebec/Canada = 0 ; orgs frères « dentons » et
21+« dentons-global » = 200 mais 0 offre ; pas de migration (le board est
22+vivant). Les postes réguliers du bureau de Montréal sont sur
23+careers.dentons.com (SuccessFactors) → couverts depuis 2026-10-06 par le
24+connecteur frère ``dentons``. Tant que ce board Europe ne republie pas de
25+rôle Global à Montréal, found=0 ici est CORRECT.
26+"""
10 from .workable import WorkableConnector 27 from .workable import WorkableConnector
11 28
12 29
modified jobka/connectors/successfactors.py +50 −5
@@ -5,7 +5,7 @@
5 # Fichier : jobka/connectors/successfactors.py 5 # Fichier : jobka/connectors/successfactors.py
6 # Rôle : Classe de plateforme SAP SuccessFactors (sites carrières « Career 6 # Rôle : Classe de plateforme SAP SuccessFactors (sites carrières « Career
7 # Site Builder » / jobs2web) — sitemap RSS ou XML + microdonnées 7 # Site Builder » / jobs2web) — sitemap RSS ou XML + microdonnées
8−# Créé : 2026-08-18 Modifié : 2026-09-13 8+# Créé : 2026-08-18 Modifié : 2026-10-06
9 # ============================================================================= 9 # =============================================================================
10 """Plateforme SAP SuccessFactors (Career Site Builder, ex-jobs2web). 10 """Plateforme SAP SuccessFactors (Career Site Builder, ex-jobs2web).
11 11
@@ -47,11 +47,42 @@ _QC_SLUG_RE = re.compile(r"-(qu[ée]b|qc)[-/]|-[ghj]\d[a-z][- ]?\d[a-z]\d/",
47 _ITEMPROP_RE = re.compile( 47 _ITEMPROP_RE = re.compile(
48 r'<(?:span|div|p)[^>]*itemprop="description"[^>]*>(.*?)' 48 r'<(?:span|div|p)[^>]*itemprop="description"[^>]*>(.*?)'
49 r"</(?:span|div|p)>", re.S | re.I) 49 r"</(?:span|div|p)>", re.S | re.I)
50+# Ouverture de l'élément description — l'extraction ÉQUILIBRÉE (voir
51+# _balanced_itemprop) remplace _ITEMPROP_RE quand le contenu contient des
52+# balises imbriquées du même type : sur careers.dentons.com le span
53+# itemprop="description" enveloppe <span class="jobdescription"><p>…, et la
54+# capture non gourmande s'arrêtait au premier </p> → description vide
55+# (constaté 2026-10-06). _ITEMPROP_RE reste le repli.
56+_DESC_OPEN_RE = re.compile(
57+ r'<(span|div|p)\b[^>]*itemprop="description"[^>]*>', re.I)
58+# Titre complet de la page détail — le titre dérivé du slug est tronqué sur
59+# les tenants dont le slug se termine par la province abrégée seule
60+# (« …-Accounts-Payable-Lead-Queb/ » → « Accounts », Dentons 2026-10-06) :
61+# l'heuristique [:-3] suppose une queue « -Prov-CP1-CP2 ».
62+_TITLE_RE = re.compile(
63+ r'<(?:span|h\d)[^>]*itemprop="title"[^>]*>(.*?)</', re.S | re.I)
50 _META_RE = re.compile( 64 _META_RE = re.compile(
51 r'itemprop="(datePosted|addressLocality|postalCode|employmentType)"' 65 r'itemprop="(datePosted|addressLocality|postalCode|employmentType)"'
52 r'[^>]*content="([^"]*)"', re.I) 66 r'[^>]*content="([^"]*)"', re.I)
53 67
54 68
69+def _balanced_itemprop(html: str, open_re: re.Pattern) -> str:
70+ """Contenu des éléments matchés par ``open_re``, en équilibrant les
71+ balises du MÊME type que l'élément porteur (span/div/p imbriqués)."""
72+ parts = []
73+ for m in open_re.finditer(html):
74+ tag, start, depth = m.group(1).lower(), m.end(), 1
75+ tok = re.compile(rf"<(/?){tag}\b[^>]*>", re.I)
76+ end = len(html)
77+ for t in tok.finditer(html, start):
78+ depth += -1 if t.group(1) else 1
79+ if depth == 0:
80+ end = t.start()
81+ break
82+ parts.append(html[start:end])
83+ return "\n".join(parts)
84+
85+
55 class SuccessFactorsConnector(BaseConnector): 86 class SuccessFactorsConnector(BaseConnector):
56 """Base SuccessFactors CSB — sous-classes : définir source_id, EMPLOYER, 87 """Base SuccessFactors CSB — sous-classes : définir source_id, EMPLOYER,
57 BASE (URL du site carrières, ex. https://jobs.bombardier.com).""" 88 BASE (URL du site carrières, ex. https://jobs.bombardier.com)."""
@@ -107,9 +138,16 @@ class SuccessFactorsConnector(BaseConnector):
107 def _fetch_detail(self, url: str) -> dict: 138 def _fetch_detail(self, url: str) -> dict:
108 html = self.get(url).text 139 html = self.get(url).text
109 d: dict = {} 140 d: dict = {}
110− chunks = _ITEMPROP_RE.findall(html) 141+ desc = clean_html(_balanced_itemprop(html, _DESC_OPEN_RE))
111− if chunks: 142+ if not desc.strip(): # repli : ancienne capture non gourmande
112− d["description"] = clean_html("\n".join(chunks))[:20000] 143+ desc = clean_html("\n".join(_ITEMPROP_RE.findall(html)))
144+ if desc.strip():
145+ d["description"] = desc[:20000]
146+ m = _TITLE_RE.search(html)
147+ if m:
148+ title = clean_html(m.group(1)).strip()
149+ if title:
150+ d["title"] = title
113 for prop, content in _META_RE.findall(html): 151 for prop, content in _META_RE.findall(html):
114 d[prop] = content 152 d[prop] = content
115 return d 153 return d
@@ -168,9 +206,16 @@ class SuccessFactorsConnector(BaseConnector):
168 if d: 206 if d:
169 if d.get("description"): 207 if d.get("description"):
170 job.description = d["description"] 208 job.description = d["description"]
209+ if d.get("title"):
210+ job.title = d["title"]
171 if d.get("datePosted"): 211 if d.get("datePosted"):
172 job.date_posted = d["datePosted"] 212 job.date_posted = d["datePosted"]
173− if d.get("addressLocality"): 213+ # offre multi-villes (meta address répétée, dernière gagnante,
214+ # ex. Dentons Ottawa/Toronto/Montréal) : ne jamais remplacer
215+ # la ville QC du slug par une ville hors Québec
216+ if d.get("addressLocality") and (
217+ not self.quebec_only
218+ or is_quebec_location(d["addressLocality"])):
174 job.city = d["addressLocality"] 219 job.city = d["addressLocality"]
175 if d.get("employmentType"): 220 if d.get("employmentType"):
176 job.details["employment_label"] = d["employmentType"] 221 job.details["employment_label"] = d["employmentType"]
modified jobka/normalize.py +14 −1
@@ -6,7 +6,7 @@
6 # Rôle : Normalisation commune des offres (salaires, dates, mode/type 6 # Rôle : Normalisation commune des offres (salaires, dates, mode/type
7 # d'emploi, lieu, catégorie, exigences, séniorité) — jamais de 7 # d'emploi, lieu, catégorie, exigences, séniorité) — jamais de
8 # valeur inventée 8 # valeur inventée
9−# Créé : 2026-08-17 Modifié : 2026-10-05 9+# Créé : 2026-08-17 Modifié : 2026-10-06
10 # ============================================================================= 10 # =============================================================================
11 """Couche de normalisation commune appelée par JobPosting.finalize(). 11 """Couche de normalisation commune appelée par JobPosting.finalize().
12 12
@@ -323,6 +323,19 @@ def parse_date(raw, today: _dt.date | None = None) -> str | None:
323 else 30 if unit.startswith(("moi", "month")) else 1) 323 else 30 if unit.startswith(("moi", "month")) else 1)
324 return (today - _dt.timedelta(days=days)).isoformat() 324 return (today - _dt.timedelta(days=days)).isoformat()
325 325
326+ # « Sun Oct 04 02:00:00 UTC 2026 » — java.util.Date.toString(), émis par
327+ # les meta itemprop="datePosted" des sites SuccessFactors CSB
328+ m = re.search(r"\b([a-z]{3,9})\s+(\d{1,2})\s+\d{1,2}:\d{2}:\d{2}\s+"
329+ r"[a-z]{1,5}\s+(\d{4})", key)
330+ if m:
331+ mois = _MONTHS.get(m.group(1))
332+ if mois:
333+ try:
334+ return _dt.date(int(m.group(3)), mois,
335+ int(m.group(2))).isoformat()
336+ except ValueError:
337+ return None
338+
326 # « 1er juillet 2026 » / « July 1st, 2026 » / « déc. 2026 » 339 # « 1er juillet 2026 » / « July 1st, 2026 » / « déc. 2026 »
327 m = re.search(r"(?:(\d{1,2})(?:er|e|st|nd|rd|th)?\s+)?([a-z]{3,9})\.?,?\s+(?:(\d{1,2})(?:er|st|nd|rd|th)?,?\s+)?(\d{4})", key) 340 m = re.search(r"(?:(\d{1,2})(?:er|e|st|nd|rd|th)?\s+)?([a-z]{3,9})\.?,?\s+(?:(\d{1,2})(?:er|st|nd|rd|th)?,?\s+)?(\d{4})", key)
328 if m: 341 if m:
modified tests/test_normalize.py +8 −1
@@ -5,7 +5,7 @@
5 # Fichier : tests/test_normalize.py 5 # Fichier : tests/test_normalize.py
6 # Rôle : Tests unitaires de la couche de normalisation (salaires, dates, 6 # Rôle : Tests unitaires de la couche de normalisation (salaires, dates,
7 # mode/type d'emploi, lieux, catégories) 7 # mode/type d'emploi, lieux, catégories)
8−# Créé : 2026-08-17 Modifié : 2026-09-14 8+# Créé : 2026-08-17 Modifié : 2026-10-06
9 # ============================================================================= 9 # =============================================================================
10 import datetime as dt 10 import datetime as dt
11 11
@@ -95,6 +95,13 @@ def test_date_english():
95 assert parse_date("July 1st, 2026", TODAY) == "2026-07-01" 95 assert parse_date("July 1st, 2026", TODAY) == "2026-07-01"
96 96
97 97
98+def test_date_java_tostring():
99+ # SuccessFactors CSB : meta itemprop="datePosted" au format
100+ # java.util.Date.toString() (cas Dentons careers.dentons.com, 2026-10-06)
101+ assert parse_date("Sun Oct 04 02:00:00 UTC 2026") == "2026-10-04"
102+ assert parse_date("Mon Dec 01 23:00:00 EST 2026") == "2026-12-01"
103+
104+
98 def test_date_relative(): 105 def test_date_relative():
99 assert parse_date("Posted 3 Days Ago", TODAY) == "2026-08-14" 106 assert parse_date("Posted 3 Days Ago", TODAY) == "2026-08-14"
100 assert parse_date("il y a 2 semaines", TODAY) == "2026-08-03" 107 assert parse_date("il y a 2 semaines", TODAY) == "2026-08-03"
101 108
Menu

Theme