SPB Git

spb/job-ka

Public

[ka6] connecteur nortekinc: broken = fenêtre de maintenance planifiée Workday (systémique, terminée) — rien à réparer côté flux, sync rejoué found=4 = médiane 4.0 + artefact vague C corrigé (url vide → nortekair.com). Broken = faux positif: 3 syncs ok=0 « Workday en maintenance planifiée » (00:20, 02:21 et 07:09 le 2026-10-17) après dernier sync vert 22:01 la veille found=4, même fenêtre que puma/valmet/quadreal, détection maintenance de workday.py a proprement nommé la cause, AUCUN retrait. Fenêtre terminée à la mission (09:17): board live 200, 41 postes, sync isolé rejoué found=4 = médiane en 5,2 s, 4 offres QC actives (Montréal/St-Léonard-d'Aston/Québec x2) miss_count=0. Pas de migration: nortekair.com/careers (200) référence toujours myworkdayjobs.com/en-US/NortekAirSolutions. Artefact vague C: url vide dans sources.json → https://www.nortekair.com (200 vérifié live; nortekinc.com ne répond plus, marque opérante = Nortek Air Solutions). Docstring chronologie 1re intervention, fiches nortekinc.md/INDEX.md régénérées. 107 tests verts, pm2 restart job-ka-sync OK, site local 200, www.job-ka.com 200.

Simon-Pierre Boucher committed (Oct 17, 2026) parent a8e0c58 Browse files

4 changed files +36 −12

modified data/sources.json +1 −1
@@ -11520,7 +11520,7 @@
11520 11520 {
11521 11521 "id": "nortekinc",
11522 11522 "name": "Nortekinc",
11523 − "url": "",
11523 + "url": "https://www.nortekair.com",
11524 11524 "careers_url": "https://nortekinc.wd503.myworkdayjobs.com/NortekAirSolutions",
11525 11525 "sectors": [
11526 11526 "TI",
modified docs/connecteurs/INDEX.md +3 −3
@@ -5,14 +5,14 @@ Auteur : Simon-Pierre Boucher
5 5 Contact : contact@spboucher.ai
6 6 Fichier : docs/connecteurs/INDEX.md
7 7 Rôle : Index généré de la documentation des connecteurs (ATS, employeurs, portails, dépôt)
8 −Généré : 2026-10-17 09:04 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER,
8 +Généré : 2026-10-17 09:19 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER,
9 9 relancer le script pour régénérer.
10 10 =============================================================================
11 11 -->
12 12
13 13 # Job·Ka — Connecteurs (index)
14 14
15 −> Index généré le 2026-10-17 09:04 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-17 09:19 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 17 **1104 employeurs directs** connectés via **25 plateformes ATS** + **3 portails agrégateurs** + le canal de **dépôt direct** — **25566 offres actives** (23016 directes, 2550 portails ; 116 masquées comme doublons inter-sources, soit 25450 visibles). 1134 fiches.
18 18
@@ -688,7 +688,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser
688 688 | [Msd](msd.md) | [`workday`](ats-workday.md) | 4 | 100 % | 100 % | ✅ |
689 689 | [Nmédia](nmdia.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 4 | 0 % | 100 % | ✅ |
690 690 | [Norbert Health](norbert_health.md) | [`breezy`](ats-breezy.md) | 4 | 0 % | 100 % | ✅ |
691 −| [Nortekinc](nortekinc.md) | [`workday`](ats-workday.md) | 4 | 25 % | 100 % | ❌ |
691 +| [Nortekinc](nortekinc.md) | [`workday`](ats-workday.md) | 4 | 25 % | 100 % | ✅ |
692 692 | [Nssl](nssl.md) | [`dayforce`](ats-dayforce.md) | 4 | 0 % | 100 % | ✅ |
693 693 | [Nuvei](nuvei.md) | [`workable`](ats-workable.md) | 4 | 0 % | 100 % | ✅ |
694 694 | [O-I](o_i.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 4 | 25 % | 100 % | ✅ |
modified docs/connecteurs/nortekinc.md +12 −7
@@ -5,7 +5,7 @@ Auteur : Simon-Pierre Boucher
5 5 Contact : contact@spboucher.ai
6 6 Fichier : docs/connecteurs/nortekinc.md
7 7 Rôle : Fiche connecteur — Nortekinc (employeur direct, ATS workday)
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-17 09:19 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER,
9 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 17 ## Description
18 18
19 −- **Site** : [Nortekinc]()
19 +- **Site** : [Nortekinc](https://www.nortekair.com)
20 20 - **Page carrières** : https://nortekinc.wd503.myworkdayjobs.com/NortekAirSolutions
21 21 - **Secteurs** : TI, Services
22 22 - **Région** : Montréal
@@ -38,7 +38,7 @@ Généré : 2026-10-14 18:40 EDT par scripts/gen_connector_docs.py — NE PAS
38 38
39 39 ## Champs → schéma
40 40
41 −Complétude mesurée sur les **4 offres actives** de la source (base live, 2026-10-14 18:40 EDT).
41 +Complétude mesurée sur les **4 offres actives** de la source (base live, 2026-10-17 09:19 EDT).
42 42
43 43 | Champ (`jobs.*`) | Rôle | Complétude |
44 44 |---|---|---|
@@ -79,19 +79,24 @@ Exemple réel : *Assembleur 1 - Fin de semaine* — Montréal · Un salaire de d
79 79
80 80 ## Volumétrie & complétude live
81 81
82 −*(mesuré le 2026-10-14 18:40 EDT dans `data/jobka.db`)*
82 +*(mesuré le 2026-10-17 09:19 EDT dans `data/jobka.db`)*
83 83
84 84 - **Offres en base** : 21 (dont **4 actives**, 0 masquées comme doublons `dup_of`)
85 85 - **Salaire** : 1/4 actives (25 %)
86 86 - **GPS** : 4/4 actives (100 %)
87 87 - **Mode** : 0/4 actives (0 %)
88 88 - **Parution** : 4/4 actives (100 %)
89 −- **Dernier sync** : 2026-10-14 15:45 — trouvées 4, +0, ~0, -0
90 −- **Syncs enregistrés** (`sync_log`) : 473
89 +- **Dernier sync** : 2026-10-17 09:18 — trouvées 4, +0, ~2, -0
90 +- **Syncs enregistrés** (`sync_log`) : 496
91 91
92 92 ## Erreurs & dépannage
93 93
94 −Aucune erreur dans `sync_log` pour cette source.
94 +Erreurs relevées dans `sync_log` :
95 +
96 +| Erreur | Occurrences | Dernière fois |
97 +|---|---|---|
98 +| Workday en maintenance planifiée (redirigé vers https://community.workday.com/maintenance-… | 2 | 2026-10-17 07:09 |
99 +| Workday en maintenance planifiée (redirigé vers https://static.community.workday.com/maint… | 1 | 2026-10-17 02:21 |
95 100
96 101 - Rejouer un sync isolé : `.venv/bin/python run.py sync nortekinc` puis inspecter `sync_log` : `sqlite3 data/jobka.db "SELECT * FROM sync_log WHERE source='nortekinc' ORDER BY ts DESC LIMIT 5;"`
97 102 - 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/nortekinc.py +20 −1
@@ -5,11 +5,30 @@
5 5 # Fichier : jobka/connectors/nortekinc.py
6 6 # Rôle : Connecteur Nortekinc — workday (tenant nortekinc.wd503, site NortekAirSolutions)
7 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-17
9 9 # =============================================================================
10 10 from .workday import WorkdayConnector
11 11
12 12
13 +# Chronologie des interventions
14 +# -----------------------------
15 +# 2026-10-17 (ka6, 1re intervention) — « broken » = fenêtre de maintenance
16 +# PLANIFIÉE Workday (POST cxs redirigé vers community.workday.com/
17 +# maintenance-page), systémique : 3 syncs ok=0 « maintenance planifiée »
18 +# à 00:20, 02:21 et 07:09 le 2026-10-17, même fenêtre que puma/valmet/
19 +# quadreal (~20 tenants Workday du repo). Dernier sync vert la veille
20 +# 22:01 found=4 = médiane 4.0, AUCUN retrait. Fenêtre TERMINÉE au moment
21 +# de la mission (09:17) : board live 200 avec 41 postes, sync rejoué
22 +# found=4 = médiane en 5,2 s, 4 offres QC actives (Montréal,
23 +# St-Léonard-d'Aston, Québec x2) miss_count=0. Rien à réparer côté flux.
24 +# Pas de migration : nortekair.com/careers (200) référence toujours
25 +# myworkdayjobs.com/en-US/NortekAirSolutions. Seul correctif : artefact
26 +# vague C « url vide » dans data/sources.json -> https://www.nortekair.com
27 +# (200 vérifié live ; nortekinc.com ne répond plus — Nortek Inc. absorbée
28 +# par Madison Industries, la marque opérante est Nortek Air Solutions).
29 +# Ne pas diagnostiquer tenant par tenant pendant ces fenêtres : repart seul.
30 +
31 +
13 32 class NortekincConnector(WorkdayConnector):
14 33 source_id = 'nortekinc'
15 34 EMPLOYER = 'Nortekinc'
16 35
Menu

Theme