[ka6] fix connecteur postmediadistributionsolutions: faux positif supervision « volume QC nul » (46e cas du pattern, 1re intervention) — le connecteur est SAIN, found=0 est le comportement CORRECT. Postmedia Distribution Solutions (division logistique « source-to-shelf » de Postmedia lancée 2026-07, postmedia.com/postmedialogistics/) publie ses postes terrain ville par ville sur un board Breezy pan-canadien ; son unique offre QC (dbf5f01158a2 « Part-Time Merchandiser », Gatineau, 16,60 $/h) a été DÉPUBLIÉE par l'employeur entre 15:53 et 18:14 EDT le 2026-10-06 (found 1 → 0, miss_count=1, puis removed=1 via le garde-fou 2-miss au sync rejoué), sync_log VERT en continu (ok=1). Marqueur Breezy confirmé live (2e confirmation après telus_health 5134fa5) : détail = 200 + « Position Closed », offre absente du /json — trancher sur l'absence dans /json, pas sur le code HTTP. Board re-vérifié vivant et ACTIVEMENT utilisé : /json 200, 18 offres (publications 2026-09-29 et 2026-10-02), réparties AB/SK/BC/NB/ON/NS, multi-lieux inspectés (Fort Frances/Emo tous deux ON), AUCUN lieu QC — « Ottawa, ON » est côté ontarien, pas Gatineau. Pas de migration d'ATS : le Dayforce de postmedia.com/careers (can63/jobs.dayforcehcm.com ns postmedia, site PostmediaCareers) est le portail CORPORATE Postmedia Network, entité distincte — sondé via la mécanique DayforceConnector du repo : 25 offres en-CA, 0 QC (fr-CA aveugle maxCount=0, pattern partition-culture connu) → aucune récupération par portail frère possible (angle dentons/pwc vérifié négatif). Particularité du tenant : les Merchandiser sont republiés en CYCLE par ville avec un id Breezy neuf à chaque cycle (l'offre Gatineau avait déjà vu sa date_posted rafraîchie 2026-09-17 → 2026-10-02) — elle peut réapparaître sous un autre id ; tant que la division ne republie pas de poste au Québec, ce connecteur sera re-signalé périodiquement : structurel, pas une panne (même classe que strongtie a295929 / reworld c59448d / jove 8c2fc01 / industrialelectricmanufacturing fa64460). Artefact vague C comblé dans sources.json : url employeur vide → https://www.postmedia.com/postmedialogistics/ (vérifié 200, édition chirurgicale 1 ligne, JSON valide). Docstring postmediadistributionsolutions.py enrichie (chronologie + nature du volume). Sync isolé rejoué ×2 : found=0 stable, ok=1, 0,1 s, removed=1 au 1er replay (garde-fou 2-miss) ; non-régression plateforme breezy sur tenant vivant recruiting : found=86, ok=1, 0,4 s. Fiches docs/connecteurs/ postmediadistributionsolutions.md + ats-breezy.md + INDEX.md régénérées via scripts/gen_connector_docs.py (les 1131 autres fiches, dont seuls les instantanés horodatés changeaient, restaurées — hors périmètre). 107 tests pytest verts. pm2 restart job-ka-sync OK, site local 200, www.job-ka.com 200.
5 changed files +114 −119
modified
data/sources.json
+1 −1
@@ -5177,7 +5177,7 @@ | ||
| 5177 | 5177 | { |
| 5178 | 5178 | "id": "postmediadistributionsolutions", |
| 5179 | 5179 | "name": "Postmedia Distribution Solutions", |
| 5180 | − "url": "", | |
| 5180 | + "url": "https://www.postmedia.com/postmedialogistics/", | |
| 5181 | 5181 | "careers_url": "https://postmediadistributionsolutions.breezy.hr", |
| 5182 | 5182 | "sectors": [ |
| 5183 | 5183 | "Médias", |
modified
docs/connecteurs/INDEX.md
+7 −7
@@ -5,16 +5,16 @@ 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-06 20:48 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER, | |
| 8 | +Généré : 2026-10-06 21:10 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-06 20:48 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 21:10 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** — **25499 offres actives** (23280 directes, 2219 portails ; 111 masquées comme doublons inter-sources, soit 25388 visibles). 1134 fiches. | |
| 17 | +**1104 employeurs directs** connectés via **25 plateformes ATS** + **3 portails agrégateurs** + le canal de **dépôt direct** — **25496 offres actives** (23277 directes, 2219 portails ; 111 masquées comme doublons inter-sources, soit 25385 visibles). 1134 fiches. | |
| 18 | 18 | |
| 19 | 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 | |
@@ -32,10 +32,10 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser | ||
| 32 | 32 | | [`greenhouse`](ats-greenhouse.md) | 132 | 850 | 19 % | 100 % | |
| 33 | 33 | | [`wpjobmanager`](ats-wpjobmanager.md) | 8 | 752 | 5 % | 100 % | |
| 34 | 34 | | [`lever`](ats-lever.md) | 59 | 624 | 20 % | 96 % | |
| 35 | −| [`breezy`](ats-breezy.md) | 71 | 416 | 39 % | 95 % | | |
| 35 | +| [`breezy`](ats-breezy.md) | 71 | 415 | 39 % | 95 % | | |
| 36 | 36 | | [`ashby`](ats-ashby.md) | 41 | 301 | 43 % | 59 % | |
| 37 | 37 | | [`bamboohr`](ats-bamboohr.md) | 37 | 283 | 8 % | 100 % | |
| 38 | −| [`recruitee`](ats-recruitee.md) | 30 | 278 | 19 % | 97 % | | |
| 38 | +| [`recruitee`](ats-recruitee.md) | 30 | 276 | 20 % | 97 % | | |
| 39 | 39 | | [`taleo_tbe`](ats-taleo_tbe.md) | 7 | 201 | 25 % | 58 % | |
| 40 | 40 | | [`zoho_recruit`](ats-zoho_recruit.md) | 17 | 169 | 13 % | 89 % | |
| 41 | 41 | | [`jazzhr`](ats-jazzhr.md) | 28 | 151 | 15 % | 92 % | |
@@ -714,7 +714,6 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser | ||
| 714 | 714 | | [Ajholdingsltd](ajholdingsltd.md) | [`dayforce`](ats-dayforce.md) | 3 | 100 % | 100 % | ✅ | |
| 715 | 715 | | [Allucent](allucent.md) | [`workable`](ats-workable.md) | 3 | 0 % | 100 % | ✅ | |
| 716 | 716 | | [Amgen](amgen.md) | [`workday`](ats-workday.md) | 3 | 0 % | 100 % | ✅ | |
| 717 | −| [Amilia](amilia.md) | [`recruitee`](ats-recruitee.md) | 3 | 0 % | 33 % | ✅ | | |
| 718 | 717 | | [ARC'TERYX](arcteryx_com.md) | [`lever`](ats-lever.md) | 3 | 100 % | 100 % | ✅ | |
| 719 | 718 | | [BDL Énergie](bdl_energie.md) | [`breezy`](ats-breezy.md) | 3 | 33 % | 33 % | ✅ | |
| 720 | 719 | | [Berger (tourbe horticole)](berger.md) | [`dayforce`](ats-dayforce.md) | 3 | 0 % | 100 % | ✅ | |
@@ -898,6 +897,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser | ||
| 898 | 897 | | [Alan Canada](alan.md) | [`ashby`](ats-ashby.md) | 1 | 0 % | 100 % | ✅ | |
| 899 | 898 | | [Aliments Ouimet-Cordon Bleu inc.](cordonbleu.md) | [`bamboohr`](ats-bamboohr.md) | 1 | 100 % | 100 % | ✅ | |
| 900 | 899 | | [Alygra Advisory](alygra.md) | [`ashby`](ats-ashby.md) | 1 | 0 % | 100 % | ✅ | |
| 900 | +| [Amilia](amilia.md) | [`recruitee`](ats-recruitee.md) | 1 | 0 % | 100 % | ✅ | | |
| 901 | 901 | | [ANINE BING](aninebing.md) | [`greenhouse`](ats-greenhouse.md) | 1 | 0 % | 100 % | ✅ | |
| 902 | 902 | | [Ariolix](ariolix.md) | [`smartrecruiters`](ats-smartrecruiters.md) | 1 | 0 % | 100 % | ✅ | |
| 903 | 903 | | [Arterra Wines Canada](awc.md) | [`workday`](ats-workday.md) | 1 | 0 % | 100 % | ✅ | |
@@ -1009,7 +1009,6 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser | ||
| 1009 | 1009 | | [Placements Mackenzie (Power/IGM)](mackenzie.md) | [`icims`](ats-icims.md) | 1 | 100 % | 0 % | ✅ | |
| 1010 | 1010 | | [Poka FR](pokafr.md) | [`greenhouse`](ats-greenhouse.md) | 1 | 0 % | 100 % | ✅ | |
| 1011 | 1011 | | [Ponsera](ponsera.md) | [`greenhouse`](ats-greenhouse.md) | 1 | 100 % | 100 % | ✅ | |
| 1012 | −| [Postmedia Distribution Solutions](postmediadistributionsolutions.md) | [`breezy`](ats-breezy.md) | 1 | 100 % | 100 % | ✅ | | |
| 1013 | 1012 | | [Poulet Rouge](pouletrouge.md) | [`bamboohr`](ats-bamboohr.md) | 1 | 0 % | 100 % | ✅ | |
| 1014 | 1013 | | [Production Operator I (Montreal)](wikoff.md) | [`dayforce`](ats-dayforce.md) | 1 | 0 % | 100 % | ✅ | |
| 1015 | 1014 | | [Production Support Roles](canadagoose.md) | [`workday`](ats-workday.md) | 1 | 0 % | 100 % | ✅ | |
@@ -1126,6 +1125,7 @@ Conformité : voir [`docs/CONFORMITE.md`](../CONFORMITE.md). Chaque offre conser | ||
| 1126 | 1125 | | [Pelmorex](pelmorex.md) | [`lever`](ats-lever.md) | 0 | — | — | ✅ | |
| 1127 | 1126 | | [PhyNet Dermatology LLC (External)](phynetdermatology.md) | [`greenhouse`](ats-greenhouse.md) | 0 | — | — | ✅ | |
| 1128 | 1127 | | [POOLCORP](poolcorp.md) | [`workday`](ats-workday.md) | 0 | — | — | ✅ | |
| 1128 | +| [Postmedia Distribution Solutions](postmediadistributionsolutions.md) | [`breezy`](ats-breezy.md) | 0 | — | — | ✅ | | |
| 1129 | 1129 | | [Produits Kruger](produits_kruger.md) | [`taleo_tbe`](ats-taleo_tbe.md) | 0 | — | — | ✅ | |
| 1130 | 1130 | | [Projevia](projevia.md) | [`recruitee`](ats-recruitee.md) | 0 | — | — | n/d | |
| 1131 | 1131 | | [Qohash](qohash.md) | [`greenhouse`](ats-greenhouse.md) | 0 | — | — | ✅ | |
modified
docs/connecteurs/ats-breezy.md
+73 −73
@@ -5,14 +5,14 @@ Auteur : Simon-Pierre Boucher | ||
| 5 | 5 | Contact : contact@spboucher.ai |
| 6 | 6 | Fichier : docs/connecteurs/ats-breezy.md |
| 7 | 7 | Rôle : Fiche plateforme ATS breezy — mécanique partagée + tableau des 71 tenants |
| 8 | −Généré : 2026-10-05 16:23 EDT par scripts/gen_connector_docs.py — NE PAS ÉDITER, | |
| 8 | +Généré : 2026-10-06 21:10 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 | # Plateforme ATS `breezy` |
| 14 | 14 | |
| 15 | −**71 employeurs connectés** via cette plateforme — **396 offres actives**. Module partagé : `jobka/connectors/breezy.py` ; un employeur = une sous-classe d'environ 10 lignes. | |
| 15 | +**71 employeurs connectés** via cette plateforme — **415 offres actives**. Module partagé : `jobka/connectors/breezy.py` ; un employeur = une sous-classe d'environ 10 lignes. | |
| 16 | 16 | |
| 17 | 17 | ## Description & mécanique |
| 18 | 18 | |
@@ -37,77 +37,77 @@ Généré : 2026-10-05 16:23 EDT par scripts/gen_connector_docs.py — NE PAS | ||
| 37 | 37 | |
| 38 | 38 | | Employeur | Actives | Salaire | GPS | Mode | Dernier sync | OK | |
| 39 | 39 | |---|---|---|---|---|---|---| |
| 40 | −| [HIKINEX](recruiting.md) | 86 | 0 % | 100 % | 79 % | 2026-10-05 15:44 | ✅ | | |
| 41 | −| [Brand Momentum](brandmomentum.md) | 41 | 71 % | 100 % | 2 % | 2026-10-05 16:19 | ✅ | | |
| 42 | −| [Progesys](progesys_inc.md) | 24 | 4 % | 96 % | 4 % | 2026-10-05 15:41 | ✅ | | |
| 43 | −| [Réseau Mieux-Être](reseau_mieux_etre.md) | 16 | 6 % | 100 % | 6 % | 2026-10-05 15:45 | ✅ | | |
| 44 | −| [NOVIPRO](novipro.md) | 15 | 0 % | 100 % | 27 % | 2026-10-05 15:39 | ✅ | | |
| 45 | −| [EQ3](eq3_ltd.md) | 14 | 57 % | 93 % | 0 % | 2026-10-05 15:09 | ✅ | | |
| 46 | −| [Lindt & Sprüngli Canada](lindt_sprunglicanada.md) | 14 | 0 % | 93 % | 0 % | 2026-10-05 15:35 | ✅ | | |
| 47 | −| [MicroHabitat](microhabitat.md) | 13 | 100 % | 100 % | 38 % | 2026-10-05 15:37 | ✅ | | |
| 48 | −| [Nora Pharma](nora_pharma.md) | 12 | 100 % | 83 % | 0 % | 2026-10-05 15:38 | ✅ | | |
| 49 | −| [Wealthy Group of Companies LLC](wealthy_recruiting.md) | 12 | 100 % | 92 % | 0 % | 2026-10-05 15:58 | ✅ | | |
| 50 | −| [Luqia (INO)](ino_ca.md) | 11 | 0 % | 100 % | 0 % | 2026-10-05 15:26 | ✅ | | |
| 51 | −| [ADI - Albert Davidson Industries](adi_albert_davidson_industries.md) | 10 | 100 % | 100 % | 10 % | 2026-10-05 16:12 | ✅ | | |
| 52 | −| [BellatRx](bellatrx_inc.md) | 10 | 0 % | 100 % | 10 % | 2026-10-05 16:18 | ✅ | | |
| 53 | −| [Technica Mining](technica_mining.md) | 10 | 0 % | 10 % | 0 % | 2026-10-05 16:23 | ✅ | | |
| 54 | −| [3 Brasseurs Canada](trois_brasseurs.md) | 9 | 67 % | 100 % | 100 % | 2026-10-05 15:53 | ✅ | | |
| 55 | −| [ThirdChannel](thirdchannel_inc.md) | 9 | 100 % | 100 % | 0 % | 2026-10-05 15:52 | ✅ | | |
| 56 | −| [New York Holdings](new_york_holdings.md) | 8 | 12 % | 100 % | 88 % | 2026-10-05 15:38 | ✅ | | |
| 57 | −| [Prep Academy Tutors](prep_academy_tutors.md) | 8 | 100 % | 100 % | 25 % | 2026-10-05 15:41 | ✅ | | |
| 58 | −| [Merchandising Consultants Associates](merchandising_consultants_associates.md) | 7 | 100 % | 100 % | 100 % | 2026-10-05 15:37 | ✅ | | |
| 59 | −| [Alphanumeric Systems](alphanumeric_systems.md) | 5 | 100 % | 100 % | 40 % | 2026-10-05 16:14 | ✅ | | |
| 60 | −| [Spiegel Ryan S.E.N.C.R.L.](spiegel_sohmer.md) | 5 | 0 % | 100 % | 0 % | 2026-10-05 15:49 | ✅ | | |
| 61 | −| [VOXDATA](voxdata.md) | 4 | 100 % | 100 % | 100 % | 2026-10-05 15:56 | ✅ | | |
| 62 | −| [Jay Analytix](jay_analytix.md) | 4 | 0 % | 100 % | 50 % | 2026-10-05 15:27 | ✅ | | |
| 63 | −| [Norbert Health](norbert_health.md) | 4 | 0 % | 100 % | 0 % | 2026-10-05 15:38 | ✅ | | |
| 64 | −| [BDL Énergie](bdl_energie.md) | 3 | 33 % | 33 % | 0 % | 2026-10-05 16:17 | ✅ | | |
| 65 | −| [Black & McDonald](black_mcdonald_francais.md) | 3 | 0 % | 67 % | 0 % | 2026-10-05 16:18 | ✅ | | |
| 66 | −| [Turbulent](turbulent.md) | 3 | 0 % | 67 % | 0 % | 2026-10-05 15:53 | ✅ | | |
| 67 | −| [Adoc Talent Management](adoc_tm.md) | 3 | 0 % | 100 % | 33 % | 2026-10-05 16:12 | ✅ | | |
| 68 | −| [Groupe Unigesco](groupe_unigesco.md) | 3 | 67 % | 100 % | 33 % | 2026-10-05 15:15 | ✅ | | |
| 69 | −| [Vaporus](vaporus_inc.md) | 2 | 100 % | 50 % | 0 % | 2026-10-05 15:55 | ✅ | | |
| 70 | −| [Sense Ingénierie](sense_engineering.md) | 2 | 0 % | 100 % | 100 % | 2026-10-05 15:47 | ✅ | | |
| 71 | −| [Canada Global Recruitment](canada_global.md) | 1 | 0 % | 0 % | 0 % | 2026-10-05 16:20 | ✅ | | |
| 72 | −| [YouSet](youset.md) | 1 | 0 % | 100 % | 100 % | 2026-10-05 15:59 | ✅ | | |
| 73 | −| [Panda7](panda7.md) | 1 | 100 % | 100 % | 100 % | 2026-10-05 15:40 | ✅ | | |
| 74 | −| [1perTInent](x1pertinent.md) | 1 | 0 % | 100 % | 100 % | 2026-10-05 15:58 | ✅ | | |
| 75 | −| [Above Flights](above_flights.md) | 1 | 0 % | 100 % | 100 % | 2026-10-05 16:12 | ✅ | | |
| 76 | −| [AC780](ac780.md) | 1 | 0 % | 100 % | 0 % | 2026-10-05 16:12 | ✅ | | |
| 77 | −| [MOKO](africa_moko.md) | 1 | 0 % | 100 % | 0 % | 2026-10-05 16:13 | ✅ | | |
| 78 | −| [Agence](agence_carrieres.md) | 1 | 100 % | 100 % | 0 % | 2026-10-05 16:13 | ✅ | | |
| 79 | −| [Bliinx](bliinx.md) | 1 | 0 % | 100 % | 100 % | 2026-10-05 16:18 | ✅ | | |
| 80 | −| [Bon Poste](bon_poste.md) | 1 | 0 % | 100 % | 0 % | 2026-10-05 16:19 | ✅ | | |
| 81 | −| [BoxKnight](boxknight.md) | 1 | 0 % | 100 % | 100 % | 2026-10-05 16:19 | ✅ | | |
| 82 | −| [Canada-Explorers](canada_explorers.md) | 1 | 100 % | 100 % | 0 % | 2026-10-05 16:20 | ✅ | | |
| 83 | −| [Endossed](endossed.md) | 1 | 100 % | 100 % | 100 % | 2026-10-05 15:09 | ✅ | | |
| 84 | −| [Eranum Solutions Numériques](eranum.md) | 1 | 100 % | 100 % | 0 % | 2026-10-05 15:10 | ✅ | | |
| 85 | −| [Fundica](fundica.md) | 1 | 0 % | 100 % | 0 % | 2026-10-05 15:12 | ✅ | | |
| 86 | −| [Km Impact](km_impact.md) | 1 | 100 % | 100 % | 100 % | 2026-10-05 15:33 | ✅ | | |
| 87 | −| [Myle Home Service](myle_service.md) | 1 | 100 % | 100 % | 0 % | 2026-10-05 15:38 | ✅ | | |
| 88 | −| [Next Generation Inc](next_generation_inc.md) | 1 | 100 % | 100 % | 0 % | 2026-10-05 15:38 | ✅ | | |
| 89 | −| [Octav](octav.md) | 1 | 100 % | 100 % | 100 % | 2026-10-05 15:39 | ✅ | | |
| 90 | −| [PeopleConnect Inc](peopleconnect_inc.md) | 1 | 100 % | 100 % | 0 % | 2026-10-05 15:40 | ✅ | | |
| 91 | −| [Postmedia Distribution Solutions](postmediadistributionsolutions.md) | 1 | 100 % | 100 % | 0 % | 2026-10-05 15:41 | ✅ | | |
| 92 | −| [Shearwater Aerospace](shearwater_aerospace.md) | 1 | 0 % | 100 % | 100 % | 2026-10-05 15:47 | ✅ | | |
| 93 | −| [SportWhere](sportwhere.md) | 1 | 0 % | 100 % | 0 % | 2026-10-05 15:50 | ✅ | | |
| 94 | −| [Urbania](urbania.md) | 1 | 0 % | 100 % | 0 % | 2026-10-05 15:54 | ✅ | | |
| 95 | −| [Valital Technologies](valital_technologies.md) | 1 | 0 % | 100 % | 100 % | 2026-10-05 15:54 | ✅ | | |
| 96 | −| [Volume7](volume7.md) | 1 | 100 % | 100 % | 100 % | 2026-10-05 15:56 | ✅ | | |
| 97 | −| [TELUS Santé — Cliniques](telus_health_7fe6b0fe8614.md) | 0 | — | — | — | 2026-10-05 15:52 | ✅ | | |
| 98 | −| [4th Day Trucking](x4th_day_trucking.md) | 0 | — | — | — | 2026-10-05 15:59 | ✅ | | |
| 99 | −| [DropGenie](drop_genie.md) | 0 | — | — | — | 2026-10-05 15:07 | ✅ | | |
| 100 | −| [Family Resource Home Care](family_resource_home_care.md) | 0 | — | — | — | 2026-10-05 15:10 | ✅ | | |
| 101 | −| [Gastro Health](gastro_health.md) | 0 | — | — | — | 2026-10-05 15:12 | ✅ | | |
| 102 | −| [H & S Loss Control Inspections](h_s_loss_control_inspections_in.md) | 0 | — | — | — | 2026-10-05 15:22 | ✅ | | |
| 103 | −| [Hera AI](hera.md) | 0 | — | — | — | 2026-10-05 15:22 | ✅ | | |
| 104 | −| [Insite Property Solutions](insite_property_solutions.md) | 0 | — | — | — | 2026-10-05 15:26 | ✅ | | |
| 105 | −| [Paythings](paythings_19f14e354a62.md) | 0 | — | — | — | 2026-10-05 15:40 | ✅ | | |
| 106 | −| [Ridepanda](ridepanda.md) | 0 | — | — | — | 2026-10-05 15:45 | ✅ | | |
| 107 | −| [SRS Merchandising](srs_merchandising.md) | 0 | — | — | — | 2026-10-05 15:50 | ✅ | | |
| 108 | −| [Trueline](trueline.md) | 0 | — | — | — | 2026-10-05 15:53 | ✅ | | |
| 109 | −| [VA Desk](vadesk.md) | 0 | — | — | — | 2026-10-05 15:54 | ✅ | | |
| 110 | −| [Wyze Labs](wyze_labs.md) | 0 | — | — | — | 2026-10-05 15:58 | ✅ | | |
| 40 | +| [HIKINEX](recruiting.md) | 86 | 0 % | 100 % | 79 % | 2026-10-06 21:09 | ✅ | | |
| 41 | +| [Brand Momentum](brandmomentum.md) | 45 | 73 % | 100 % | 2 % | 2026-10-06 20:55 | ✅ | | |
| 42 | +| [Progesys](progesys_inc.md) | 24 | 4 % | 96 % | 4 % | 2026-10-06 18:14 | ✅ | | |
| 43 | +| [Merchandising Consultants Associates](merchandising_consultants_associates.md) | 23 | 100 % | 96 % | 100 % | 2026-10-06 18:10 | ✅ | | |
| 44 | +| [Réseau Mieux-Être](reseau_mieux_etre.md) | 16 | 6 % | 100 % | 6 % | 2026-10-06 18:18 | ✅ | | |
| 45 | +| [NOVIPRO](novipro.md) | 15 | 0 % | 100 % | 27 % | 2026-10-06 18:12 | ✅ | | |
| 46 | +| [EQ3](eq3_ltd.md) | 14 | 57 % | 93 % | 0 % | 2026-10-06 19:54 | ✅ | | |
| 47 | +| [Lindt & Sprüngli Canada](lindt_sprunglicanada.md) | 14 | 0 % | 93 % | 0 % | 2026-10-06 18:08 | ✅ | | |
| 48 | +| [MicroHabitat](microhabitat.md) | 13 | 100 % | 100 % | 38 % | 2026-10-06 18:10 | ✅ | | |
| 49 | +| [Wealthy Group of Companies LLC](wealthy_recruiting.md) | 12 | 100 % | 92 % | 0 % | 2026-10-06 18:31 | ✅ | | |
| 50 | +| [Luqia (INO)](ino_ca.md) | 11 | 0 % | 100 % | 0 % | 2026-10-06 17:59 | ✅ | | |
| 51 | +| [Nora Pharma](nora_pharma.md) | 11 | 100 % | 91 % | 0 % | 2026-10-06 18:11 | ✅ | | |
| 52 | +| [ADI - Albert Davidson Industries](adi_albert_davidson_industries.md) | 10 | 100 % | 100 % | 10 % | 2026-10-06 20:49 | ✅ | | |
| 53 | +| [BellatRx](bellatrx_inc.md) | 10 | 0 % | 100 % | 10 % | 2026-10-06 20:54 | ✅ | | |
| 54 | +| [Technica Mining](technica_mining.md) | 10 | 0 % | 10 % | 0 % | 2026-10-06 18:25 | ✅ | | |
| 55 | +| [3 Brasseurs Canada](trois_brasseurs.md) | 9 | 67 % | 100 % | 100 % | 2026-10-06 18:26 | ✅ | | |
| 56 | +| [ThirdChannel](thirdchannel_inc.md) | 9 | 100 % | 100 % | 0 % | 2026-10-06 18:26 | ✅ | | |
| 57 | +| [New York Holdings](new_york_holdings.md) | 8 | 12 % | 100 % | 88 % | 2026-10-06 18:11 | ✅ | | |
| 58 | +| [Prep Academy Tutors](prep_academy_tutors.md) | 8 | 100 % | 100 % | 25 % | 2026-10-06 18:14 | ✅ | | |
| 59 | +| [Alphanumeric Systems](alphanumeric_systems.md) | 5 | 100 % | 100 % | 40 % | 2026-10-06 20:51 | ✅ | | |
| 60 | +| [VOXDATA](voxdata.md) | 5 | 100 % | 100 % | 80 % | 2026-10-06 18:29 | ✅ | | |
| 61 | +| [Spiegel Ryan S.E.N.C.R.L.](spiegel_sohmer.md) | 5 | 0 % | 100 % | 0 % | 2026-10-06 18:23 | ✅ | | |
| 62 | +| [Jay Analytix](jay_analytix.md) | 4 | 0 % | 100 % | 50 % | 2026-10-06 18:00 | ✅ | | |
| 63 | +| [Norbert Health](norbert_health.md) | 4 | 0 % | 100 % | 0 % | 2026-10-06 18:11 | ✅ | | |
| 64 | +| [BDL Énergie](bdl_energie.md) | 3 | 33 % | 33 % | 0 % | 2026-10-06 20:54 | ✅ | | |
| 65 | +| [Black & McDonald](black_mcdonald_francais.md) | 3 | 0 % | 67 % | 0 % | 2026-10-06 20:55 | ✅ | | |
| 66 | +| [Turbulent](turbulent.md) | 3 | 0 % | 67 % | 0 % | 2026-10-06 18:27 | ✅ | | |
| 67 | +| [Adoc Talent Management](adoc_tm.md) | 3 | 0 % | 100 % | 33 % | 2026-10-06 20:49 | ✅ | | |
| 68 | +| [Groupe Unigesco](groupe_unigesco.md) | 3 | 67 % | 100 % | 33 % | 2026-10-06 17:46 | ✅ | | |
| 69 | +| [Vaporus](vaporus_inc.md) | 2 | 100 % | 50 % | 0 % | 2026-10-06 18:28 | ✅ | | |
| 70 | +| [Sense Ingénierie](sense_engineering.md) | 2 | 0 % | 100 % | 100 % | 2026-10-06 18:20 | ✅ | | |
| 71 | +| [Canada Global Recruitment](canada_global.md) | 1 | 0 % | 0 % | 0 % | 2026-10-06 20:56 | ✅ | | |
| 72 | +| [YouSet](youset.md) | 1 | 0 % | 100 % | 100 % | 2026-10-06 18:32 | ✅ | | |
| 73 | +| [Panda7](panda7.md) | 1 | 100 % | 100 % | 100 % | 2026-10-06 18:13 | ✅ | | |
| 74 | +| [1perTInent](x1pertinent.md) | 1 | 0 % | 100 % | 100 % | 2026-10-06 18:32 | ✅ | | |
| 75 | +| [Above Flights](above_flights.md) | 1 | 0 % | 100 % | 100 % | 2026-10-06 20:49 | ✅ | | |
| 76 | +| [AC780](ac780.md) | 1 | 0 % | 100 % | 0 % | 2026-10-06 20:49 | ✅ | | |
| 77 | +| [MOKO](africa_moko.md) | 1 | 0 % | 100 % | 0 % | 2026-10-06 20:50 | ✅ | | |
| 78 | +| [Agence](agence_carrieres.md) | 1 | 100 % | 100 % | 0 % | 2026-10-06 20:50 | ✅ | | |
| 79 | +| [Bliinx](bliinx.md) | 1 | 0 % | 100 % | 100 % | 2026-10-06 20:55 | ✅ | | |
| 80 | +| [Bon Poste](bon_poste.md) | 1 | 0 % | 100 % | 0 % | 2026-10-06 20:55 | ✅ | | |
| 81 | +| [BoxKnight](boxknight.md) | 1 | 0 % | 100 % | 100 % | 2026-10-06 20:55 | ✅ | | |
| 82 | +| [Canada-Explorers](canada_explorers.md) | 1 | 100 % | 100 % | 0 % | 2026-10-06 20:56 | ✅ | | |
| 83 | +| [Endossed](endossed.md) | 1 | 100 % | 100 % | 100 % | 2026-10-06 21:10 | ✅ | | |
| 84 | +| [Eranum Solutions Numériques](eranum.md) | 1 | 100 % | 100 % | 0 % | 2026-10-06 19:54 | ✅ | | |
| 85 | +| [Fundica](fundica.md) | 1 | 0 % | 100 % | 0 % | 2026-10-06 19:56 | ✅ | | |
| 86 | +| [Km Impact](km_impact.md) | 1 | 100 % | 100 % | 100 % | 2026-10-06 18:06 | ✅ | | |
| 87 | +| [Myle Home Service](myle_service.md) | 1 | 100 % | 100 % | 0 % | 2026-10-06 18:11 | ✅ | | |
| 88 | +| [Next Generation Inc](next_generation_inc.md) | 1 | 100 % | 100 % | 0 % | 2026-10-06 18:11 | ✅ | | |
| 89 | +| [Octav](octav.md) | 1 | 100 % | 100 % | 100 % | 2026-10-06 18:13 | ✅ | | |
| 90 | +| [PeopleConnect Inc](peopleconnect_inc.md) | 1 | 100 % | 100 % | 0 % | 2026-10-06 18:13 | ✅ | | |
| 91 | +| [Shearwater Aerospace](shearwater_aerospace.md) | 1 | 0 % | 100 % | 100 % | 2026-10-06 18:21 | ✅ | | |
| 92 | +| [SportWhere](sportwhere.md) | 1 | 0 % | 100 % | 0 % | 2026-10-06 18:23 | ✅ | | |
| 93 | +| [Urbania](urbania.md) | 1 | 0 % | 100 % | 0 % | 2026-10-06 18:27 | ✅ | | |
| 94 | +| [Valital Technologies](valital_technologies.md) | 1 | 0 % | 100 % | 100 % | 2026-10-06 18:28 | ✅ | | |
| 95 | +| [Volume7](volume7.md) | 1 | 100 % | 100 % | 100 % | 2026-10-06 18:29 | ✅ | | |
| 96 | +| [TELUS Santé — Cliniques](telus_health_7fe6b0fe8614.md) | 0 | — | — | — | 2026-10-06 18:25 | ✅ | | |
| 97 | +| [4th Day Trucking](x4th_day_trucking.md) | 0 | — | — | — | 2026-10-06 18:32 | ✅ | | |
| 98 | +| [DropGenie](drop_genie.md) | 0 | — | — | — | 2026-10-06 21:07 | ✅ | | |
| 99 | +| [Family Resource Home Care](family_resource_home_care.md) | 0 | — | — | — | 2026-10-06 19:55 | ✅ | | |
| 100 | +| [Gastro Health](gastro_health.md) | 0 | — | — | — | 2026-10-06 19:57 | ✅ | | |
| 101 | +| [H & S Loss Control Inspections](h_s_loss_control_inspections_in.md) | 0 | — | — | — | 2026-10-06 17:53 | ✅ | | |
| 102 | +| [Hera AI](hera.md) | 0 | — | — | — | 2026-10-06 17:54 | ✅ | | |
| 103 | +| [Insite Property Solutions](insite_property_solutions.md) | 0 | — | — | — | 2026-10-06 17:59 | ✅ | | |
| 104 | +| [Paythings](paythings_19f14e354a62.md) | 0 | — | — | — | 2026-10-06 18:13 | ✅ | | |
| 105 | +| [Postmedia Distribution Solutions](postmediadistributionsolutions.md) | 0 | — | — | — | 2026-10-06 21:09 | ✅ | | |
| 106 | +| [Ridepanda](ridepanda.md) | 0 | — | — | — | 2026-10-06 18:18 | ✅ | | |
| 107 | +| [SRS Merchandising](srs_merchandising.md) | 0 | — | — | — | 2026-10-06 18:23 | ✅ | | |
| 108 | +| [Trueline](trueline.md) | 0 | — | — | — | 2026-10-06 18:26 | ✅ | | |
| 109 | +| [VA Desk](vadesk.md) | 0 | — | — | — | 2026-10-06 18:27 | ✅ | | |
| 110 | +| [Wyze Labs](wyze_labs.md) | 0 | — | — | — | 2026-10-06 18:32 | ✅ | | |
| 111 | 111 | |
| 112 | 112 | ## Licence / conformité |
| 113 | 113 | |
modified
docs/connecteurs/postmediadistributionsolutions.md
+11 −37
@@ -5,7 +5,7 @@ Auteur : Simon-Pierre Boucher | ||
| 5 | 5 | Contact : contact@spboucher.ai |
| 6 | 6 | Fichier : docs/connecteurs/postmediadistributionsolutions.md |
| 7 | 7 | Rôle : Fiche connecteur — Postmedia Distribution Solutions (employeur direct, ATS breezy) |
| 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 21:10 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-09-21 18:06 EDT par scripts/gen_connector_docs.py — NE PAS | ||
| 16 | 16 | |
| 17 | 17 | ## Description |
| 18 | 18 | |
| 19 | −- **Site** : [Postmedia Distribution Solutions]() | |
| 19 | +- **Site** : [Postmedia Distribution Solutions](https://www.postmedia.com/postmedialogistics/) | |
| 20 | 20 | - **Page carrières** : https://postmediadistributionsolutions.breezy.hr |
| 21 | 21 | - **Secteurs** : Médias, Distribution |
| 22 | 22 | - **Région** : Gatineau |
@@ -36,33 +36,7 @@ Généré : 2026-09-21 18:06 EDT par scripts/gen_connector_docs.py — NE PAS | ||
| 36 | 36 | |
| 37 | 37 | ## Champs → schéma |
| 38 | 38 | |
| 39 | −Complétude mesurée sur les **1 offres actives** de la source (base live, 2026-09-21 18:06 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 / … | 100 % | | |
| 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) | 0 % | | |
| 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 | 100 % | | |
| 62 | −| `apply_url` — Candidature | lien de candidature directe | 0 % | | |
| 63 | −| `gps` — GPS | lat/lng (géocodage sans invention) | 100 % | | |
| 64 | − | |
| 65 | −Exemple réel : *Part-Time Merchandiser* — Gatineau · $16.60/hr · parue le 2026-09-17. | |
| 39 | +*Aucune offre active en base pour cette source.* | |
| 66 | 40 | |
| 67 | 41 | ## Fréquence & budgets |
| 68 | 42 | |
@@ -72,15 +46,15 @@ Exemple réel : *Part-Time Merchandiser* — Gatineau · $16.60/hr · parue le 2 | ||
| 72 | 46 | |
| 73 | 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 21:10 EDT dans `data/jobka.db`)* | |
| 76 | 50 | |
| 77 | −- **Offres en base** : 1 (dont **1 actives**, 0 masquées comme doublons `dup_of`) | |
| 78 | −- **Salaire** : 1/1 actives (100 %) | |
| 79 | −- **GPS** : 1/1 actives (100 %) | |
| 80 | −- **Mode** : 0/1 actives (0 %) | |
| 81 | −- **Parution** : 1/1 actives (100 %) | |
| 82 | −- **Dernier sync** : 2026-09-21 17:27 — trouvées 1, +0, ~0, -0 | |
| 83 | −- **Syncs enregistrés** (`sync_log`) : 236 | |
| 51 | +- **Offres en base** : 1 (dont **0 actives**, 0 masquées comme doublons `dup_of`) | |
| 52 | +- **Salaire** : 0/0 actives (—) | |
| 53 | +- **GPS** : 0/0 actives (—) | |
| 54 | +- **Mode** : 0/0 actives (—) | |
| 55 | +- **Parution** : 0/0 actives (—) | |
| 56 | +- **Dernier sync** : 2026-10-06 21:09 — trouvées 0, +0, ~0, -0 | |
| 57 | +- **Syncs enregistrés** (`sync_log`) : 396 | |
| 84 | 58 | |
| 85 | 59 | ## Erreurs & dépannage |
| 86 | 60 | |
modified
jobka/connectors/postmediadistributionsolutions.py
+22 −1
@@ -5,12 +5,33 @@ | ||
| 5 | 5 | # Fichier : jobka/connectors/postmediadistributionsolutions.py |
| 6 | 6 | # Rôle : Connecteur Postmedia Distribution Solutions — breezy (org « postmediadistributionsolutions ») |
| 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-06 | |
| 9 | 9 | # ============================================================================= |
| 10 | 10 | from .breezy import BreezyConnector |
| 11 | 11 | |
| 12 | 12 | |
| 13 | 13 | class PostmediadistributionsolutionsConnector(BreezyConnector): |
| 14 | + """Postmedia Distribution Solutions — division logistique « source-to-shelf » | |
| 15 | + de Postmedia (lancée 2026-07, postmedia.com/postmedialogistics/), qui publie | |
| 16 | + ses postes terrain (Merchandiser, Order Assembler…) ville par ville sur ce | |
| 17 | + board Breezy pan-canadien. | |
| 18 | + | |
| 19 | + Volume QC structurellement 0 ou 1 (médiane 1.0) : le board liste ~18 offres | |
| 20 | + réparties AB/SK/BC/NB/ON/NS et porte au plus UNE offre québécoise à la fois | |
| 21 | + (« Part-Time Merchandiser », Gatineau). 2026-10-06 : cette unique offre QC | |
| 22 | + (dbf5f01158a2) a été dépubliée par l'employeur entre 15:53 et 18:14 EDT | |
| 23 | + (found 1 → 0, sync_log vert en continu) — marqueur Breezy confirmé live : | |
| 24 | + détail = 200 + « Position Closed », absente du /json (même marqueur que | |
| 25 | + telus_health 5134fa5). Board re-vérifié vivant et activement utilisé | |
| 26 | + (publications 2026-09-29 / 2026-10-02), 0 lieu QC (multi-lieux inspectés ; | |
| 27 | + « Ottawa, ON » = côté ontarien, pas Gatineau). Pas de migration d'ATS : le | |
| 28 | + Dayforce de postmedia.com/careers est le portail CORPORATE Postmedia Network | |
| 29 | + (sondé : 25 offres en-CA, 0 QC ; fr-CA aveugle), entité distincte de cette | |
| 30 | + division. found=0 est donc CORRECT tant que la division ne republie pas de | |
| 31 | + poste au Québec ; les Merchandiser étant republiés en cycle par ville (id | |
| 32 | + neuf à chaque cycle), l'offre Gatineau peut réapparaître sous un autre id. | |
| 33 | + """ | |
| 34 | + | |
| 14 | 35 | source_id = 'postmediadistributionsolutions' |
| 15 | 36 | EMPLOYER = 'Postmedia Distribution Solutions' |
| 16 | 37 | ORG = 'postmediadistributionsolutions' |
| 17 | 38 | |