SPB Git forge

spb/job-ka

Public
229commits 1branches 0releases
38.1 MBsize
maindefault branch
36 min agolast push
HTML 82.1% Python 14.6% TypeScript 1.9% CSS 1% JavaScript 0.5%
7.7 KB

# Altom Transport (altom_transport)

Employeur direct · Plateforme ATS : workable · Statut registre : actif · Connecteur : jobka/connectors/altom_transport.py

# Description

# Accès

  • Mécanique : voir la fiche plateforme ats-workable.md — API JSON publique du site carrières, backend requests direct (Scrapfly seulement si indiqué sur la fiche plateforme).
  • Identifiants du tenant (attributs du connecteur) :
Attribut Valeur
EMPLOYER Altom Transport
ORG altom-transport
  • Throttle : 1.0 s entre requêtes.
  • 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).

# Champs → schéma

Aucune offre active en base pour cette source.

# Fréquence & budgets

  • Cadence : resynchronisation horaire (PM2 job-ka-sync = run.py watch 60), suivie du géocodage en lot puis de la déduplication inter-sources.
  • Throttle : 1.0 s minimum entre deux requêtes vers la source (request_delay).
  • 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.

# Volumétrie & complétude live

(mesuré le 2026-09-21 18:06 EDT dans data/jobka.db)

  • Offres en base : 1 (dont 0 actives, 0 masquées comme doublons dup_of)
  • Salaire : 0/0 actives (—)
  • GPS : 0/0 actives (—)
  • Mode : 0/0 actives (—)
  • Parution : 0/0 actives (—)
  • Dernier sync : 2026-09-21 16:37 — trouvées 0, +0, ~0, -0
  • Syncs enregistrés (sync_log) : 292

# Erreurs & dépannage

Erreurs relevées dans sync_log :

Erreur Occurrences Dernière fois
HTTPSConnectionPool(host='apply.workable.com', port=443): Max retries exceeded with url: /… 1 2026-09-18 12:51
  • Rejouer un sync isolé : .venv/bin/python run.py sync altom_transport puis inspecter sync_log : sqlite3 data/jobka.db "SELECT * FROM sync_log WHERE source='altom_transport' ORDER BY ts DESC LIMIT 5;"
  • 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.

# Licence / conformité

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 Altom Transport » 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.

# Historique

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 :

  • fd4bfc8 qualité lieux : rejet des villes hors Québec, bâtiments McGill → Montréal ;
  • 5a66f48 +59 employeurs (sondage massif d'ATS + détection de pages carrières) ;
  • 4917d57 8 nouveaux ATS (Taleo, Njoyn, UltiPro, iCIMS, SuccessFactors, ADP WFN, Digital Recruiters, Workland) + 23 employeurs publics/parapublics ;
  • f6e7571 portails Guichet-Emplois, Jobillico, Espresso-Jobs — l'offre directe gagne toujours la canonique (dédup) ;
  • 744cbfc badge « Offre directe », stats directes/portails, dépôt direct employeurs ;
  • 1604ff9 reprise sur coupure WAF Guichet-Emplois (retry + acquis partiel).

Commits touchant jobka/connectors/altom_transport.py :

  • ea13137 2026-09-18 [ka6] fix connecteur altom_transport: faux positif de supervision (0 offre QC légitime chez ce transporteur US) + échec DNS transitoire ponctuel — aucun défaut du connecteur, correction d'un artefact sources.json (url vide) — le statut stale vient de la définition de succès de la supervision : le tenant Workable altom-transport n'a AUCUNE offre QC depuis la fermeture de « Chauffeur de Camion-Citerne Classe 1 » (Montréal) fin août, donc chaque sync horaire rend ok=1 found=0 (médiane 0.0) et est compté comme non-succès depuis le 2026-08-28 (509 h). Le connecteur est INTACT et re-vérifié live : l'API widget répond 200 avec 52 offres, TOUTES aux États-Unis — zéro lieu CA dans les tableaux locations, zéro poste en télétravail, zéro mention Québec/Montréal dans le JSON complet (l'aveuglement type stateindustrial est exclu). L'unique sync en échec (17/09 20:51) est une NameResolutionError DNS transitoire sur apply.workable.com, non reproduite. Même profil que earthrated f7b1c35, canadasmotorcycle 175b215, jsheldllc bdc5d09, psacunion 4d8080b : tenant à volume QC nul/faible compté non-succès par la supervision. Correction au passage de l'artefact du générateur vague C : url vide dans data/sources.json → https://altomtransport.com (vérifié 200, titre « Altom Transport | Petroleum and Chemical Transportation » ; la fiche affichait « Site : Altom Transport »). Le nom d'employeur « Altom Transport » est correct. Docstring du connecteur mise à jour (52 offres, re-vérif 2026-09-18). Sync isolé rejoué : found=0 en 0,2 s, ok=1 — 0 est le volume légitime tant qu'Altom ne republie pas au Québec ; les offres reviendront d'elles-mêmes si republiées. 106 tests pytest verts. pm2 restart job-ka-sync OK, site local 200, www.job-ka.com 200.
  • 2fa16cd 2026-08-28 [ka6] fix connecteur altom_transport: employeur AMÉRICAIN de transport de liquides en vrac (Altom Transport, siège à Hammond, Indiana, dessert US+Canada) à volume QC naturellement très faible (médiane 0.5) — le board Workable apply.workable.com/altom-transport est passé à 0 offre QC le 2026-08-28 : vide LÉGITIME, la seule offre québécoise (« Chauffeur de Camion-Citerne Classe 1 », Montréal, parue 2026-07-21, vraie offre QC — permis classe 1) a été fermée par l'employeur (URL CBB48687CC → redirection /oops). Vérifications réelles : API widget v1 200 avec 37 offres, TOUTES aux É.-U. (Indiana, Ohio, Illinois, Texas, Louisiane…), 0 faux positif — le filtre is_quebec_location fait exactement son travail. Le statut stale venait du volume 0 compté comme échec par la supervision ; le connecteur est sain (syncs ok=1, board 200). L'offre montréalaise avait déjà été purgée par le mécanisme normal (miss_count=2 → removed=1, active=0 au sync de 12:27). Test final : fetch réel = 37 bruts, 0 retenus (QC) = comportement correct, les offres QC réapparaîtront d'elles-mêmes quand Altom republiera au Québec. Note de contexte ajoutée au connecteur, aucun changement de code. Sync isolé rejoué (ok), pm2 restart job-ka-sync OK, site 200.
  • c45c753 2026-08-23 Vague C — +620 connecteurs employeurs directs (350 -> 968)