SPB Git

spb/job-ka

Public

[ka6] connecteur surmesur: stale = PANNE MONDIALE BambooHR (incident de sécurité PHP2SHELL), rien à réparer côté connecteur — même panne que rethinkcanada 7b553af8, robotiq 11935dc7 et scalia 43e98cae le même jour. Le tenant était vert avec found=7 (= médiane 7.0) au sync de 05:44:49 le 2026-10-21, premier échec à 08:44:00, pile dans la fenêtre de mise hors ligne des portails BambooHR (08:34-08:37 EDT) : /careers/list = 404 text/plain {"error_msg":"404 Route Not Found"} sur surmesur ET le frère mitacs (vérifiés live pendant la mission), status.bamboohr.com toujours MONITORING (PHP2SHELL). Pas une migration d'ATS. Le sync échoue proprement (ok=0, raise_for_status 404, re-vérifié par sync isolé : removed=0) donc AUCUN retrait — les 7 offres QC (Québec/Laval, tailleur Surmesur) restent actives en base ; dès le retour de BambooHR (sonder /careers/list, 200 = fenêtre finie, pattern fenêtre de maintenance Workday) le sync horaire repart seul. Artefact vague C : url vide dans sources.json → https://surmesur.com (301 → /fr-ca/, vérifié live, « Vêtements sur mesure pour hommes et femmes »). Docstring chronologie 1re intervention, fiches surmesur.md/ats-bamboohr.md/INDEX.md régénérées. 108 tests verts, pm2 restart job-ka-sync OK, site local 200, www.job-ka.com 200.

Simon-Pierre Boucher committed (Oct 21, 2026) parent 43e98ca Browse files

5 changed files +60 −33

modified data/sources.json +1 −1
@@ -2618,7 +2618,7 @@
2618 { 2618 {
2619 "id": "surmesur", 2619 "id": "surmesur",
2620 "name": "Surmesur", 2620 "name": "Surmesur",
2621− "url": "", 2621+ "url": "https://surmesur.com",
2622 "careers_url": "https://surmesur.bamboohr.com/careers", 2622 "careers_url": "https://surmesur.bamboohr.com/careers",
2623 "sectors": [ 2623 "sectors": [
2624 "Mode", 2624 "Mode",
modified docs/connecteurs/INDEX.md +15 −15
@@ -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-21 11:43 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER, 8+Généré : 2026-10-21 11:58 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-21 11:43 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-21 11:58 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−**1104 employeurs directs** connectés via **25 plateformes ATS** + **3 portails agrégateurs** + le canal de **dépôt direct** — **26119 offres actives** (23118 directes, 3001 portails ; 131 masquées comme doublons inter-sources, soit 25988 visibles). 1134 fiches. 17+**1104 employeurs directs** connectés via **25 plateformes ATS** + **3 portails agrégateurs** + le canal de **dépôt direct** — **26122 offres actives** (23121 directes, 3001 portails ; 131 masquées comme doublons inter-sources, soit 25991 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,13 +22,13 @@ 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 | 7514 | 48 % | 87 % | 25+| [`workday`](ats-workday.md) | 232 | 7515 | 48 % | 87 % |
26−| [`smartrecruiters`](ats-smartrecruiters.md) | 172 | 2943 | 16 % | 99 % | 26+| [`smartrecruiters`](ats-smartrecruiters.md) | 172 | 2942 | 16 % | 99 % |
27 | [`workable`](ats-workable.md) | 71 | 1999 | 18 % | 100 % | 27 | [`workable`](ats-workable.md) | 71 | 1999 | 18 % | 100 % |
28−| [`dayforce`](ats-dayforce.md) | 129 | 1905 | 9 % | 100 % | 28+| [`dayforce`](ats-dayforce.md) | 129 | 1907 | 9 % | 100 % |
29 | [`successfactors`](ats-successfactors.md) | 12 | 1687 | 17 % | 99 % | 29 | [`successfactors`](ats-successfactors.md) | 12 | 1687 | 17 % | 99 % |
30 | [`njoyn`](ats-njoyn.md) | 11 | 1253 | 69 % | 87 % | 30 | [`njoyn`](ats-njoyn.md) | 11 | 1253 | 69 % | 87 % |
31−| [`workland`](ats-workland.md) | 1 | 1175 | 35 % | 100 % | 31+| [`workland`](ats-workland.md) | 1 | 1179 | 35 % | 100 % |
32 | [`greenhouse`](ats-greenhouse.md) | 132 | 824 | 18 % | 100 % | 32 | [`greenhouse`](ats-greenhouse.md) | 132 | 824 | 18 % | 100 % |
33 | [`wpjobmanager`](ats-wpjobmanager.md) | 8 | 788 | 6 % | 100 % | 33 | [`wpjobmanager`](ats-wpjobmanager.md) | 8 | 788 | 6 % | 100 % |
34 | [`lever`](ats-lever.md) | 58 | 604 | 20 % | 96 % | 34 | [`lever`](ats-lever.md) | 58 | 604 | 20 % | 96 % |
@@ -38,12 +38,12 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
38 | [`ashby`](ats-ashby.md) | 41 | 278 | 50 % | 56 % | 38 | [`ashby`](ats-ashby.md) | 41 | 278 | 50 % | 56 % |
39 | [`taleo_tbe`](ats-taleo_tbe.md) | 7 | 204 | 27 % | 58 % | 39 | [`taleo_tbe`](ats-taleo_tbe.md) | 7 | 204 | 27 % | 58 % |
40 | [`zoho_recruit`](ats-zoho_recruit.md) | 17 | 161 | 16 % | 88 % | 40 | [`zoho_recruit`](ats-zoho_recruit.md) | 17 | 161 | 16 % | 88 % |
41−| [`jazzhr`](ats-jazzhr.md) | 28 | 153 | 14 % | 91 % |
42 | [`teamtailor`](ats-teamtailor.md) | 10 | 152 | 30 % | 95 % | 41 | [`teamtailor`](ats-teamtailor.md) | 10 | 152 | 30 % | 95 % |
42+| [`jazzhr`](ats-jazzhr.md) | 28 | 152 | 13 % | 91 % |
43 | [`adp`](ats-adp.md) | 17 | 130 | 36 % | 95 % | 43 | [`adp`](ats-adp.md) | 17 | 130 | 36 % | 95 % |
44 | [`taleo`](ats-taleo.md) | 5 | 110 | 0 % | 100 % | 44 | [`taleo`](ats-taleo.md) | 5 | 110 | 0 % | 100 % |
45 | [`eightfold`](ats-eightfold.md) | 1 | 59 | 90 % | 100 % | 45 | [`eightfold`](ats-eightfold.md) | 1 | 59 | 90 % | 100 % |
46−| [`icims`](ats-icims.md) | 7 | 58 | 31 % | 91 % | 46+| [`icims`](ats-icims.md) | 7 | 56 | 29 % | 91 % |
47 | [`ultipro`](ats-ultipro.md) | 4 | 51 | 49 % | 100 % | 47 | [`ultipro`](ats-ultipro.md) | 4 | 51 | 49 % | 100 % |
48 | [`digitalrecruiters`](ats-digitalrecruiters.md) | 2 | 35 | 86 % | 100 % | 48 | [`digitalrecruiters`](ats-digitalrecruiters.md) | 2 | 35 | 86 % | 100 % |
49 | [`custom`](ats-custom.md) | 1 | 35 | 34 % | 91 % | 49 | [`custom`](ats-custom.md) | 1 | 35 | 34 % | 91 % |
@@ -61,7 +61,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
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) | 1175 | 35 % | 100 % | ✅ | 64+| [Réseau Atlas Workland (~80 employeurs QC : CSS, cégeps, Santé Québec, STQ, UQTR…)](atlas_workland.md) | [`workland`](ats-workland.md) | 1179 | 35 % | 100 % | ✅ |
65 | [Couche-Tard / Circle K](circlek.md) | [`workday`](ats-workday.md) | 1003 | 69 % | 68 % | ✅ | 65 | [Couche-Tard / Circle K](circlek.md) | [`workday`](ats-workday.md) | 1003 | 69 % | 68 % | ✅ |
66 | [Bombardier](bombardier.md) | [`successfactors`](ats-successfactors.md) | 959 | 1 % | 100 % | ✅ | 66 | [Bombardier](bombardier.md) | [`successfactors`](ats-successfactors.md) | 959 | 1 % | 100 % | ✅ |
67 | [Walmart Canada](walmart.md) | [`workday`](ats-workday.md) | 953 | 98 % | 90 % | ✅ | 67 | [Walmart Canada](walmart.md) | [`workday`](ats-workday.md) | 953 | 98 % | 90 % | ✅ |
@@ -92,7 +92,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
92 | [TJX Canada (Winners, HomeSense, Marshalls)](tjx.md) | [`workday`](ats-workday.md) | 127 | 98 % | 100 % | ✅ | 92 | [TJX Canada (Winners, HomeSense, Marshalls)](tjx.md) | [`workday`](ats-workday.md) | 127 | 98 % | 100 % | ✅ |
93 | [La Vie en Rose](lavieenrose.md) | [`dayforce`](ats-dayforce.md) | 122 | 4 % | 100 % | ✅ | 93 | [La Vie en Rose](lavieenrose.md) | [`dayforce`](ats-dayforce.md) | 122 | 4 % | 100 % | ✅ |
94 | [Deloitte Canada](deloitte.md) | [`successfactors`](ats-successfactors.md) | 116 | 98 % | 98 % | ✅ | 94 | [Deloitte Canada](deloitte.md) | [`successfactors`](ats-successfactors.md) | 116 | 98 % | 98 % | ✅ |
95−| [BMO Groupe financier](bmo.md) | [`workday`](ats-workday.md) | 114 | 87 % | 79 % | ✅ | 95+| [BMO Groupe financier](bmo.md) | [`workday`](ats-workday.md) | 115 | 87 % | 79 % | ✅ |
96 | [Artelia Canada](artelia.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 113 | 0 % | 98 % | ✅ | 96 | [Artelia Canada](artelia.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 113 | 0 % | 98 % | ✅ |
97 | [Cascades](cascades.md) | [`successfactors`](ats-successfactors.md) | 108 | 83 % | 100 % | ✅ | 97 | [Cascades](cascades.md) | [`successfactors`](ats-successfactors.md) | 108 | 83 % | 100 % | ✅ |
98 | [Groupe Helios](groupehelios.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 102 | 2 % | 100 % | ✅ | 98 | [Groupe Helios](groupehelios.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 102 | 2 % | 100 % | ✅ |
@@ -110,8 +110,8 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
110 | [Linen Chest](linenchest.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 84 | 8 % | 100 % | ✅ | 110 | [Linen Chest](linenchest.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 84 | 8 % | 100 % | ✅ |
111 | [Promutuel Assurance](promutuel.md) | [`workday`](ats-workday.md) | 81 | 0 % | 100 % | ✅ | 111 | [Promutuel Assurance](promutuel.md) | [`workday`](ats-workday.md) | 81 | 0 % | 100 % | ✅ |
112 | [Gflenv](gflenv.md) | [`workday`](ats-workday.md) | 79 | 6 % | 90 % | ✅ | 112 | [Gflenv](gflenv.md) | [`workday`](ats-workday.md) | 79 | 6 % | 90 % | ✅ |
113+| [Bulkbarn](bulkbarn.md) | [`dayforce`](ats-dayforce.md) | 77 | 0 % | 100 % | ✅ |
113 | [CAE](cae.md) | [`workday`](ats-workday.md) | 77 | 18 % | 94 % | ✅ | 114 | [CAE](cae.md) | [`workday`](ats-workday.md) | 77 | 18 % | 94 % | ✅ |
114−| [Bulkbarn](bulkbarn.md) | [`dayforce`](ats-dayforce.md) | 75 | 0 % | 100 % | ✅ |
115 | [CISSS de l'Outaouais](cisss_outaouais.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 74 | 28 % | 99 % | ✅ | 115 | [CISSS de l'Outaouais](cisss_outaouais.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 74 | 28 % | 99 % | ✅ |
116 | [Banque CIBC](cibc.md) | [`workday`](ats-workday.md) | 71 | 0 % | 100 % | ✅ | 116 | [Banque CIBC](cibc.md) | [`workday`](ats-workday.md) | 71 | 0 % | 100 % | ✅ |
117 | [EMCO](emcocorporation.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 66 | 42 % | 100 % | ✅ | 117 | [EMCO](emcocorporation.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 66 | 42 % | 100 % | ✅ |
@@ -220,12 +220,12 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
220 | [RM Staffing B.V.](rebootmonkey.md) | [`recruitee`](ats-recruitee.md) | 26 | 85 % | 100 % | ✅ | 220 | [RM Staffing B.V.](rebootmonkey.md) | [`recruitee`](ats-recruitee.md) | 26 | 85 % | 100 % | ✅ |
221 | [Unitytech](unitytech.md) | [`workday`](ats-workday.md) | 26 | 88 % | 85 % | ✅ | 221 | [Unitytech](unitytech.md) | [`workday`](ats-workday.md) | 26 | 88 % | 85 % | ✅ |
222 | [Wabtec](wabtec.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 26 | 19 % | 100 % | ✅ | 222 | [Wabtec](wabtec.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 26 | 19 % | 100 % | ✅ |
223−| [AbbVie](abbvie.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 25 | 0 % | 100 % | ✅ |
224 | [AVP](aviva.md) | [`workday`](ats-workday.md) | 25 | 16 % | 92 % | ✅ | 223 | [AVP](aviva.md) | [`workday`](ats-workday.md) | 25 | 16 % | 92 % | ✅ |
225 | [Canada Vie](canada_vie.md) | [`successfactors`](ats-successfactors.md) | 25 | 100 % | 92 % | ✅ | 224 | [Canada Vie](canada_vie.md) | [`successfactors`](ats-successfactors.md) | 25 | 100 % | 92 % | ✅ |
226 | [Huawei Canada](huaweicanada.md) | [`recruitee`](ats-recruitee.md) | 25 | 4 % | 100 % | ✅ | 225 | [Huawei Canada](huaweicanada.md) | [`recruitee`](ats-recruitee.md) | 25 | 4 % | 100 % | ✅ |
227 | [Nortera](nortera.md) | [`ultipro`](ats-ultipro.md) | 25 | 52 % | 100 % | ✅ | 226 | [Nortera](nortera.md) | [`ultipro`](ats-ultipro.md) | 25 | 52 % | 100 % | ✅ |
228 | [Soprema](soprema.md) | [`dayforce`](ats-dayforce.md) | 25 | 24 % | 100 % | ✅ | 227 | [Soprema](soprema.md) | [`dayforce`](ats-dayforce.md) | 25 | 24 % | 100 % | ✅ |
228+| [AbbVie](abbvie.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 24 | 0 % | 100 % | ✅ |
229 | [Behaviour Interactif](bhvr.md) | [`lever`](ats-lever.md) | 24 | 0 % | 100 % | ✅ | 229 | [Behaviour Interactif](bhvr.md) | [`lever`](ats-lever.md) | 24 | 0 % | 100 % | ✅ |
230 | [CHUM](chum.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 24 | 4 % | 96 % | ✅ | 230 | [CHUM](chum.md) | [`wpjobmanager`](ats-wpjobmanager.md) | 24 | 4 % | 96 % | ✅ |
231 | [FedEx Express Canada](fedex.md) | [`workday`](ats-workday.md) | 24 | 100 % | 88 % | ✅ | 231 | [FedEx Express Canada](fedex.md) | [`workday`](ats-workday.md) | 24 | 100 % | 88 % | ✅ |
@@ -516,7 +516,6 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
516 | [WestGroupe](westgroupe.md) | [`jazzhr`](ats-jazzhr.md) | 8 | 0 % | 100 % | ✅ | 516 | [WestGroupe](westgroupe.md) | [`jazzhr`](ats-jazzhr.md) | 8 | 0 % | 100 % | ✅ |
517 | [AJ Walter Aviation](ajwalter.md) | [`recruitee`](ats-recruitee.md) | 7 | 0 % | 100 % | ✅ | 517 | [AJ Walter Aviation](ajwalter.md) | [`recruitee`](ats-recruitee.md) | 7 | 0 % | 100 % | ✅ |
518 | [Aliaxis](aliaxis.md) | [`workday`](ats-workday.md) | 7 | 43 % | 86 % | ✅ | 518 | [Aliaxis](aliaxis.md) | [`workday`](ats-workday.md) | 7 | 43 % | 86 % | ✅ |
519−| [Altitude Aerospace](altitudeaerospace.md) | [`jazzhr`](ats-jazzhr.md) | 7 | 14 % | 100 % | ✅ |
520 | [Artefact North America](artefactnoram.md) | [`greenhouse`](ats-greenhouse.md) | 7 | 57 % | 100 % | ✅ | 519 | [Artefact North America](artefactnoram.md) | [`greenhouse`](ats-greenhouse.md) | 7 | 57 % | 100 % | ✅ |
521 | [Big Bang](bigbang.md) | [`bamboohr`](ats-bamboohr.md) | 7 | 29 % | 100 % | ❌ | 520 | [Big Bang](bigbang.md) | [`bamboohr`](ats-bamboohr.md) | 7 | 29 % | 100 % | ❌ |
522 | [Boart Longyear](bly.md) | [`dayforce`](ats-dayforce.md) | 7 | 100 % | 100 % | ✅ | 521 | [Boart Longyear](bly.md) | [`dayforce`](ats-dayforce.md) | 7 | 100 % | 100 % | ✅ |
@@ -555,6 +554,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
555 | [Accedian Networks](accediannetworks.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 6 | 0 % | 100 % | ✅ | 554 | [Accedian Networks](accediannetworks.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 6 | 0 % | 100 % | ✅ |
556 | [Administrateur comptable principal](bird.md) | [`workday`](ats-workday.md) | 6 | 0 % | 100 % | ✅ | 555 | [Administrateur comptable principal](bird.md) | [`workday`](ats-workday.md) | 6 | 0 % | 100 % | ✅ |
557 | [Also Recrutement - Carrière](alsorecrutement.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 6 | 17 % | 50 % | ✅ | 556 | [Also Recrutement - Carrière](alsorecrutement.md) | [`zoho_recruit`](ats-zoho_recruit.md) | 6 | 17 % | 50 % | ✅ |
557+| [Altitude Aerospace](altitudeaerospace.md) | [`jazzhr`](ats-jazzhr.md) | 6 | 0 % | 100 % | ✅ |
558 | [Berger (tourbe horticole)](berger.md) | [`dayforce`](ats-dayforce.md) | 6 | 0 % | 100 % | ✅ | 558 | [Berger (tourbe horticole)](berger.md) | [`dayforce`](ats-dayforce.md) | 6 | 0 % | 100 % | ✅ |
559 | [Bilingual (French/English) Sales Broker (RIBO Licensed)](ogc.md) | [`dayforce`](ats-dayforce.md) | 6 | 50 % | 100 % | ✅ | 559 | [Bilingual (French/English) Sales Broker (RIBO Licensed)](ogc.md) | [`dayforce`](ats-dayforce.md) | 6 | 50 % | 100 % | ✅ |
560 | [Bronswerk](bronswerk.md) | [`dayforce`](ats-dayforce.md) | 6 | 0 % | 100 % | ✅ | 560 | [Bronswerk](bronswerk.md) | [`dayforce`](ats-dayforce.md) | 6 | 0 % | 100 % | ✅ |
@@ -849,7 +849,6 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
849 | [Opportunities with AppDirect's Advisor Partners (Recruitment as a Service)](appdirectraas.md) | [`greenhouse`](ats-greenhouse.md) | 2 | 0 % | 100 % | ✅ | 849 | [Opportunities with AppDirect's Advisor Partners (Recruitment as a Service)](appdirectraas.md) | [`greenhouse`](ats-greenhouse.md) | 2 | 0 % | 100 % | ✅ |
850 | [OTT Financial](ott.md) | [`bamboohr`](ats-bamboohr.md) | 2 | 0 % | 100 % | ✅ | 850 | [OTT Financial](ott.md) | [`bamboohr`](ats-bamboohr.md) | 2 | 0 % | 100 % | ✅ |
851 | [Pelmorex](pelmorex.md) | [`lever`](ats-lever.md) | 2 | 0 % | 50 % | ✅ | 851 | [Pelmorex](pelmorex.md) | [`lever`](ats-lever.md) | 2 | 0 % | 50 % | ✅ |
852−| [Placements Mackenzie (Power/IGM)](mackenzie.md) | [`icims`](ats-icims.md) | 2 | 100 % | 100 % | ✅ |
853 | [Playmind](playmind.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 2 | 0 % | 100 % | ✅ | 852 | [Playmind](playmind.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 2 | 0 % | 100 % | ✅ |
854 | [Poka](poka.md) | [`greenhouse`](ats-greenhouse.md) | 2 | 0 % | 100 % | ✅ | 853 | [Poka](poka.md) | [`greenhouse`](ats-greenhouse.md) | 2 | 0 % | 100 % | ✅ |
855 | [POOLCORP](poolcorp.md) | [`workday`](ats-workday.md) | 2 | 100 % | 100 % | ✅ | 854 | [POOLCORP](poolcorp.md) | [`workday`](ats-workday.md) | 2 | 100 % | 100 % | ✅ |
@@ -1120,6 +1119,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
1120 | [Parallelz](parallelz.md) | [`workable`](ats-workable.md) | 0 | — | — | ✅ | 1119 | [Parallelz](parallelz.md) | [`workable`](ats-workable.md) | 0 | — | — | ✅ |
1121 | [Paythings](paythings_19f14e354a62.md) | [`breezy`](ats-breezy.md) | 0 | — | — | ✅ | 1120 | [Paythings](paythings_19f14e354a62.md) | [`breezy`](ats-breezy.md) | 0 | — | — | ✅ |
1122 | [PhyNet Dermatology LLC (External)](phynetdermatology.md) | [`greenhouse`](ats-greenhouse.md) | 0 | — | — | ✅ | 1121 | [PhyNet Dermatology LLC (External)](phynetdermatology.md) | [`greenhouse`](ats-greenhouse.md) | 0 | — | — | ✅ |
1122+| [Placements Mackenzie (Power/IGM)](mackenzie.md) | [`icims`](ats-icims.md) | 0 | — | — | ✅ |
1123 | [Ponsera](ponsera.md) | [`greenhouse`](ats-greenhouse.md) | 0 | — | — | ✅ | 1123 | [Ponsera](ponsera.md) | [`greenhouse`](ats-greenhouse.md) | 0 | — | — | ✅ |
1124 | [Produits Kruger](produits_kruger.md) | [`taleo_tbe`](ats-taleo_tbe.md) | 0 | — | — | ✅ | 1124 | [Produits Kruger](produits_kruger.md) | [`taleo_tbe`](ats-taleo_tbe.md) | 0 | — | — | ✅ |
1125 | [Projevia](projevia.md) | [`recruitee`](ats-recruitee.md) | 0 | — | — | n/d | 1125 | [Projevia](projevia.md) | [`recruitee`](ats-recruitee.md) | 0 | — | — | n/d |
modified docs/connecteurs/ats-bamboohr.md +7 −7
@@ -5,7 +5,7 @@ Auteur : Simon-Pierre Boucher
5 Contact : contact@spboucher.ai 5 Contact : contact@spboucher.ai
6 Fichier : docs/connecteurs/ats-bamboohr.md 6 Fichier : docs/connecteurs/ats-bamboohr.md
7 Rôle : Fiche plateforme ATS bamboohr — mécanique partagée + tableau des 37 tenants 7 Rôle : Fiche plateforme ATS bamboohr — mécanique partagée + tableau des 37 tenants
8−Généré : 2026-10-21 11:43 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER, 8+Généré : 2026-10-21 11:58 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 -->
@@ -43,7 +43,7 @@ Généré : 2026-10-21 11:43 EDT par scripts/gen_connector_docs.py — NE PAS
43 43
44 | Employeur | Actives | Salaire | GPS | Mode | Dernier sync | OK | 44 | Employeur | Actives | Salaire | GPS | Mode | Dernier sync | OK |
45 |---|---|---|---|---|---|---| 45 |---|---|---|---|---|---|---|
46−| [Broccolini](broccolini.md) | 23 | 0 % | 100 % | 100 % | 2026-10-21 11:39 | ❌ | 46+| [Broccolini](broccolini.md) | 23 | 0 % | 100 % | 100 % | 2026-10-21 11:54 | ❌ |
47 | [dcbel](dcbel.md) | 22 | 0 % | 100 % | 100 % | 2026-10-21 10:38 | ❌ | 47 | [dcbel](dcbel.md) | 22 | 0 % | 100 % | 100 % | 2026-10-21 10:38 | ❌ |
48 | [Produits Labelink](labelink.md) | 19 | 0 % | 100 % | 100 % | 2026-10-21 11:14 | ❌ | 48 | [Produits Labelink](labelink.md) | 19 | 0 % | 100 % | 100 % | 2026-10-21 11:14 | ❌ |
49 | [OPAL-RT Technologies](opalrt.md) | 18 | 0 % | 100 % | 100 % | 2026-10-21 08:28 | ✅ | 49 | [OPAL-RT Technologies](opalrt.md) | 18 | 0 % | 100 % | 100 % | 2026-10-21 08:28 | ✅ |
@@ -56,25 +56,25 @@ Généré : 2026-10-21 11:43 EDT par scripts/gen_connector_docs.py — NE PAS
56 | [Ludia / Jam City](ludia.md) | 11 | 0 % | 100 % | 100 % | 2026-10-21 11:16 | ❌ | 56 | [Ludia / Jam City](ludia.md) | 11 | 0 % | 100 % | 100 % | 2026-10-21 11:16 | ❌ |
57 | [Devimco Appartements](devimco.md) | 9 | 11 % | 100 % | 100 % | 2026-10-21 10:39 | ❌ | 57 | [Devimco Appartements](devimco.md) | 9 | 11 % | 100 % | 100 % | 2026-10-21 10:39 | ❌ |
58 | [Robotiq](robotiq.md) | 8 | 0 % | 100 % | 100 % | 2026-10-21 08:38 | ❌ | 58 | [Robotiq](robotiq.md) | 8 | 0 % | 100 % | 100 % | 2026-10-21 08:38 | ❌ |
59−| [EMD-Batimo](batimoinc.md) | 8 | 0 % | 100 % | 100 % | 2026-10-21 11:35 | ❌ | 59+| [EMD-Batimo](batimoinc.md) | 8 | 0 % | 100 % | 100 % | 2026-10-21 11:51 | ❌ |
60 | [eStruxture](estruxture.md) | 8 | 12 % | 100 % | 100 % | 2026-10-21 10:45 | ❌ | 60 | [eStruxture](estruxture.md) | 8 | 12 % | 100 % | 100 % | 2026-10-21 10:45 | ❌ |
61−| [Big Bang](bigbang.md) | 7 | 29 % | 100 % | 100 % | 2026-10-21 11:37 | ❌ | 61+| [Big Bang](bigbang.md) | 7 | 29 % | 100 % | 100 % | 2026-10-21 11:52 | ❌ |
62 | [Flare (cybersécurité)](flare.md) | 7 | 14 % | 100 % | 100 % | 2026-10-21 10:46 | ❌ | 62 | [Flare (cybersécurité)](flare.md) | 7 | 14 % | 100 % | 100 % | 2026-10-21 10:46 | ❌ |
63 | [North West Rubber](northwestrubber.md) | 7 | 0 % | 100 % | 100 % | 2026-10-21 08:27 | ✅ | 63 | [North West Rubber](northwestrubber.md) | 7 | 0 % | 100 % | 100 % | 2026-10-21 08:27 | ✅ |
64 | [Rethink](rethinkcanada.md) | 7 | 0 % | 100 % | 100 % | 2026-10-21 11:14 | ❌ | 64 | [Rethink](rethinkcanada.md) | 7 | 0 % | 100 % | 100 % | 2026-10-21 11:14 | ❌ |
65−| [Surmesur](surmesur.md) | 7 | 86 % | 100 % | 100 % | 2026-10-21 08:44 | ❌ | 65+| [Surmesur](surmesur.md) | 7 | 86 % | 100 % | 100 % | 2026-10-21 11:57 | ❌ |
66 | [Nexapp](nexapp.md) | 6 | 0 % | 100 % | 100 % | 2026-10-21 08:27 | ✅ | 66 | [Nexapp](nexapp.md) | 6 | 0 % | 100 % | 100 % | 2026-10-21 08:27 | ✅ |
67 | [PEAK Groupe financier](peakgroup.md) | 6 | 0 % | 100 % | 100 % | 2026-10-21 08:29 | ✅ | 67 | [PEAK Groupe financier](peakgroup.md) | 6 | 0 % | 100 % | 100 % | 2026-10-21 08:29 | ✅ |
68 | [Korem](korem.md) | 5 | 0 % | 100 % | 100 % | 2026-10-21 11:14 | ❌ | 68 | [Korem](korem.md) | 5 | 0 % | 100 % | 100 % | 2026-10-21 11:14 | ❌ |
69 | [Portage CyberTech](portagecybertech.md) | 5 | 0 % | 100 % | 100 % | 2026-10-21 08:29 | ✅ | 69 | [Portage CyberTech](portagecybertech.md) | 5 | 0 % | 100 % | 100 % | 2026-10-21 08:29 | ✅ |
70−| [Propriétés Scalia](scalia.md) | 5 | 20 % | 100 % | 100 % | 2026-10-21 08:40 | ❌ | 70+| [Propriétés Scalia](scalia.md) | 5 | 20 % | 100 % | 100 % | 2026-10-21 11:43 | ❌ |
71 | [MXO](mxo.md) | 3 | 67 % | 100 % | 100 % | 2026-10-21 08:26 | ✅ | 71 | [MXO](mxo.md) | 3 | 67 % | 100 % | 100 % | 2026-10-21 08:26 | ✅ |
72 | [EVLO (Hydro-Québec)](evlo.md) | 2 | 0 % | 100 % | 100 % | 2026-10-21 10:45 | ❌ | 72 | [EVLO (Hydro-Québec)](evlo.md) | 2 | 0 % | 100 % | 100 % | 2026-10-21 10:45 | ❌ |
73 | [Fenêtres Concept](fenetresconcept.md) | 2 | 100 % | 100 % | 100 % | 2026-10-21 10:46 | ❌ | 73 | [Fenêtres Concept](fenetresconcept.md) | 2 | 100 % | 100 % | 100 % | 2026-10-21 10:46 | ❌ |
74 | [OTT Financial](ott.md) | 2 | 0 % | 100 % | 100 % | 2026-10-21 08:29 | ✅ | 74 | [OTT Financial](ott.md) | 2 | 0 % | 100 % | 100 % | 2026-10-21 08:29 | ✅ |
75 | [Toon Boom Animation](toonboom.md) | 2 | 0 % | 100 % | 100 % | 2026-10-21 08:47 | ❌ | 75 | [Toon Boom Animation](toonboom.md) | 2 | 0 % | 100 % | 100 % | 2026-10-21 08:47 | ❌ |
76 | [Ziptrek Tremblant](ziptrekeco.md) | 2 | 100 % | 100 % | 100 % | 2026-10-21 09:07 | ❌ | 76 | [Ziptrek Tremblant](ziptrekeco.md) | 2 | 100 % | 100 % | 100 % | 2026-10-21 09:07 | ❌ |
77−| [Groupe BC2](bc2.md) | 1 | 0 % | 100 % | 100 % | 2026-10-21 11:35 | ❌ | 77+| [Groupe BC2](bc2.md) | 1 | 0 % | 100 % | 100 % | 2026-10-21 11:51 | ❌ |
78 | [Aliments Ouimet-Cordon Bleu inc.](cordonbleu.md) | 1 | 100 % | 100 % | 100 % | 2026-10-21 10:36 | ❌ | 78 | [Aliments Ouimet-Cordon Bleu inc.](cordonbleu.md) | 1 | 100 % | 100 % | 100 % | 2026-10-21 10:36 | ❌ |
79 | [Poulet Rouge](pouletrouge.md) | 1 | 0 % | 100 % | 100 % | 2026-10-21 08:29 | ✅ | 79 | [Poulet Rouge](pouletrouge.md) | 1 | 0 % | 100 % | 100 % | 2026-10-21 08:29 | ✅ |
80 | [Openmind Technologies](openmindt.md) | 1 | 0 % | 100 % | 100 % | 2026-10-21 08:28 | ✅ | 80 | [Openmind Technologies](openmindt.md) | 1 | 0 % | 100 % | 100 % | 2026-10-21 08:28 | ✅ |
modified docs/connecteurs/surmesur.md +13 −9
@@ -5,7 +5,7 @@ Auteur : Simon-Pierre Boucher
5 Contact : contact@spboucher.ai 5 Contact : contact@spboucher.ai
6 Fichier : docs/connecteurs/surmesur.md 6 Fichier : docs/connecteurs/surmesur.md
7 Rôle : Fiche connecteur — Surmesur (employeur direct, ATS bamboohr) 7 Rôle : Fiche connecteur — Surmesur (employeur direct, ATS bamboohr)
8−Généré : 2026-10-14 18:40 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER, 8+Généré : 2026-10-21 11:58 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-10-14 18:40 EDT par scripts/gen_connector_docs.py — NE PAS
16 16
17 ## Description 17 ## Description
18 18
19−- **Site** : [Surmesur]() 19+- **Site** : [Surmesur](https://surmesur.com)
20 - **Page carrières** : https://surmesur.bamboohr.com/careers 20 - **Page carrières** : https://surmesur.bamboohr.com/careers
21 - **Secteurs** : Mode, Commerce de détail 21 - **Secteurs** : Mode, Commerce de détail
22 - **Région** : Québec, Laval 22 - **Région** : Québec, Laval
@@ -36,7 +36,7 @@ Généré : 2026-10-14 18:40 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 **7 offres actives** de la source (base live, 2026-10-14 18:40 EDT). 39+Complétude mesurée sur les **7 offres actives** de la source (base live, 2026-10-21 11:58 EDT).
40 40
41 | Champ (`jobs.*`) | Rôle | Complétude | 41 | Champ (`jobs.*`) | Rôle | Complétude |
42 |---|---|---| 42 |---|---|---|
@@ -62,7 +62,7 @@ Complétude mesurée sur les **7 offres actives** de la source (base live, 2026-
62 | `apply_url` — Candidature | lien de candidature directe | 0 % | 62 | `apply_url` — Candidature | lien de candidature directe | 0 % |
63 | `gps` — GPS | lat/lng (géocodage sans invention) | 100 % | 63 | `gps` — GPS | lat/lng (géocodage sans invention) | 100 % |
64 64
65−Exemple réel : *Gestionnaire des médias sociaux \| Stratégie & création de contenu* — Québec · $58 000 - $68 000 / année/year · parue le 2026-10-01. 65+Exemple réel : *Coordinateur Réception & Expédition \| Shipping & Receiving Coordinator* — Québec · $50000 - $65000 / année · parue le 2026-10-15.
66 66
67 ## Fréquence & budgets 67 ## Fréquence & budgets
68 68
@@ -77,19 +77,23 @@ Exemple réel : *Gestionnaire des médias sociaux \| Stratégie & création de c
77 77
78 ## Volumétrie & complétude live 78 ## Volumétrie & complétude live
79 79
80−*(mesuré le 2026-10-14 18:40 EDT dans `data/jobka.db`)* 80+*(mesuré le 2026-10-21 11:58 EDT dans `data/jobka.db`)*
81 81
82−- **Offres en base** : 8 (dont **7 actives**, 0 masquées comme doublons `dup_of`) 82+- **Offres en base** : 10 (dont **7 actives**, 0 masquées comme doublons `dup_of`)
83 - **Salaire** : 6/7 actives (86 %) 83 - **Salaire** : 6/7 actives (86 %)
84 - **GPS** : 7/7 actives (100 %) 84 - **GPS** : 7/7 actives (100 %)
85 - **Mode** : 7/7 actives (100 %) 85 - **Mode** : 7/7 actives (100 %)
86 - **Parution** : 7/7 actives (100 %) 86 - **Parution** : 7/7 actives (100 %)
87−- **Dernier sync** : 2026-10-14 16:06 — trouvées 7, +0, ~0, -0 87+- **Dernier sync** : 2026-10-21 11:57 — trouvées 0, +0, ~0, -0, **ÉCHEC : 404 Client Error: Not Found for url: https://surmesur.bamboohr.com/careers/list**
88−- **Syncs enregistrés** (`sync_log`) : 555 88+- **Syncs enregistrés** (`sync_log`) : 612
89 89
90 ## Erreurs & dépannage 90 ## Erreurs & dépannage
91 91
92−Aucune erreur dans `sync_log` pour cette source. 92+Erreurs relevées dans `sync_log` :
93+
94+| Erreur | Occurrences | Dernière fois |
95+|---|---|---|
96+| 404 Client Error: Not Found for url: https://surmesur.bamboohr.com/careers/list | 2 | 2026-10-21 11:57 |
93 97
94 - Rejouer un sync isolé : `.venv/bin/python run.py sync surmesur` puis inspecter `sync_log` : `sqlite3 data/jobka.db "SELECT * FROM sync_log WHERE source='surmesur' ORDER BY ts DESC LIMIT 5;"` 98 - Rejouer un sync isolé : `.venv/bin/python run.py sync surmesur` puis inspecter `sync_log` : `sqlite3 data/jobka.db "SELECT * FROM sync_log WHERE source='surmesur' 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`. 99 - 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`.
modified jobka/connectors/surmesur.py +24 −1
@@ -5,12 +5,35 @@
5 # Fichier : jobka/connectors/surmesur.py 5 # Fichier : jobka/connectors/surmesur.py
6 # Rôle : Connecteur Surmesur — bamboohr (org « surmesur ») 6 # Rôle : Connecteur Surmesur — bamboohr (org « surmesur »)
7 # [généré par scripts/gen_connectors.py, flux vérifié le 2026-08-17] 7 # [généré par scripts/gen_connectors.py, flux vérifié le 2026-08-17]
8−# Créé : 2026-08-17 Modifié : 2026-08-17 8+# Créé : 2026-08-17 Modifié : 2026-10-21
9 # ============================================================================= 9 # =============================================================================
10 from .bamboohr import BambooHRConnector 10 from .bamboohr import BambooHRConnector
11 11
12 12
13 class SurmesurConnector(BambooHRConnector): 13 class SurmesurConnector(BambooHRConnector):
14+ """Surmesur — tailleur québécois de vêtements sur mesure (surmesur.com,
15+ boutiques Québec/Laval/Montréal…) qui publie ses postes sur ce board
16+ BambooHR. Volume QC stable autour de 7 (médiane 7.0).
17+
18+ 2026-10-21 (1re intervention) : stale = PANNE MONDIALE DE LA PLATEFORME
19+ BambooHR (incident de sécurité PHP2SHELL), rien à réparer côté
20+ connecteur — même constat que rethinkcanada 7b553af8, robotiq 11935dc7
21+ et scalia 43e98cae le même jour. BambooHR a mis ses portails carrières
22+ hors ligne par précaution entre 08:34 et 08:37 EDT : /careers/list =
23+ 404 text/plain sur TOUS les tenants (surmesur ET le frère mitacs
24+ vérifiés live pendant la mission), status.bamboohr.com = MONITORING
25+ « temporarily take BambooHR offline » (PHP2SHELL). Pas une migration
26+ d'ATS : le tenant était vert avec found=7 (= médiane) au sync de
27+ 05:44:49 le matin même, premier échec à 08:44:00 — pile dans la
28+ fenêtre de début de panne. Le sync échoue proprement (ok=0,
29+ raise_for_status 404, re-vérifié par sync isolé : removed=0) donc
30+ AUCUN retrait : les 7 offres QC (Québec/Laval) restent actives en
31+ base ; dès que BambooHR revient (sonder /careers/list, 200 = fenêtre
32+ finie, cf. pattern fenêtre de maintenance Workday), le sync horaire
33+ repart seul. Artefact vague C corrigé au passage : url vide dans
34+ sources.json → https://surmesur.com (301 → /fr-ca/, vérifié live).
35+ """
36+
14 source_id = 'surmesur' 37 source_id = 'surmesur'
15 EMPLOYER = 'Surmesur' 38 EMPLOYER = 'Surmesur'
16 ORG = 'surmesur' 39 ORG = 'surmesur'
17 40
Menu

Theme