Skip to content

🚪 [ENRICH] Cloturer acteurs cessés/fermés #1454

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 47 commits into from
Apr 24, 2025

Conversation

maxcorbeau
Copy link
Contributor

@maxcorbeau maxcorbeau commented Mar 24, 2025

🚪 Cloturer acteurs cessés/fermés


📦 Grosse PR

Grosse PR car bcp de travail de fond pour de la réutilisation, cf:


Carte Notion 🚪 ANNUAIRE ENTREPRISE: cloturer acteurs cessés/fermés

🗺️ contexte: on a des acteurs qui on arrêter d'éxercer, on a ingéré l'Annuaire Entreprise (AE): #1408

💡 quoi: DAG Airflow qui recherche nos acteurs dans l'AE via siren/siret et propose des suggestions de cloturation

🎯 pourquoi: résoudre le problème d'acteurs inactifs dans notre DB

🤔 comment:

  • champs acteurs django:
    • siret_is_closed: pour mémoriser la fermeture (ex: dans les DAGs de source on pourra décider d'ignorer l'ingestion des SIRET fermés)
    • parent_reason: explication du pourquoi un acteur a été rattaché à un parent
  • dbt:
    • sampling: ajout d'un mode sampling pour itérer plus rapidement (ex: voir base_ae_etablissement, activable via export DBT_SAMPLING='true' && dbt ...), on décide par modèle de ce qu'il y a de plus pertinent
    • int_acteur: ajout de acteur_type_code et source_code pour faciliter la revue de donnée et éviter les blending dans python/airflow (qui seraient répétés au lieu d'être centralisés dans dbt)
    • modèles de marts: pour générer les suggestions
  • airflow: j'ai essayé d'être le plus générique possible, essentiellement on a
    • enrich_dbt_models_refresh_task: pour rafraichir les modèles
    • enrich_dbt_model_suggest_task: pour faire les suggestions

🖼️ UI Django Admin

🚪 Acteurs Fermés: 🔴 non remplacés

image

🚪 Acteurs Fermés: 🟡 remplacés par SIRET d'un autre SIREN

image
image

🚪 Acteurs Fermés: 🟢 remplacés par SIRET du même SIREN

Même que 🚪 Acteurs Fermés: 🟡 remplacés par SIRET d'un autre SIREN avec juste le parent_reason qui change

🔍 DBT (plus de détails)

dbt docs generate --select tag:ae
dbt docs serve --port 8089

image

Logique de remplacement:

  • A) _closed_candidates: acteurs dont le SIRET (mais par forcément le SIREN sinon on pourrait pas récupérer les remplaçeants du même SIREN) est fermé dans AE
  • B) _closed_replaced: on a trouvé un autre SIRET ouvert sur les mêmes code_postal, adresse, numéro rue et NAF, priorité au SIRET du même SIREN

Suggestions:

  • C) _suggest_not_replaced = A) - B) = cohorte de suggestion pour les acteurs non remplacés
  • D) _suggest_replaced_other_siren = B) WHERE siret_is_from_same_siren IS FALSE = cohorte de suggestion pour remplacés par un SIRET d'un autre SIREN
  • E) _suggest_replaced_same_siren = B) WHERE siret_is_from_same_siren IS TRUE = cohorte de suggestion pour remplacés par un SIRET d'un même SIREN

📆 Prochaines PRs/tâches

  • Reprendre la PR RGPD: pour réutiliser le travail de fond de cette PR
  • Migration Django: pour tous les parent_reason hitoriques (parent_reason="clustering avant {date}")
  • Amélioration Clustering: pour les parent_reason futures (parent_reason="clustering {date} {cluster_id}")
  • Sampling améliorable: ex: prendre % d'acteurs ACTIFs pas juste %, à itérer en fonction des besoins

@maxcorbeau maxcorbeau force-pushed the enrich_acteurs_closed_replace_v1 branch 2 times, most recently from 042f12d to cfdd303 Compare April 3, 2025 09:52
@maxcorbeau maxcorbeau force-pushed the enrich_acteurs_closed_replace_v1 branch from c24f7f2 to ed9e27f Compare April 16, 2025 08:05
@maxcorbeau maxcorbeau marked this pull request as ready for review April 16, 2025 09:43
@maxcorbeau maxcorbeau requested a review from a team as a code owner April 16, 2025 09:43
@maxcorbeau maxcorbeau requested review from kolok and fabienheureux and removed request for a team April 16, 2025 09:43
@maxcorbeau maxcorbeau force-pushed the enrich_acteurs_closed_replace_v1 branch from e106fc0 to ba49c98 Compare April 21, 2025 07:39
@maxcorbeau maxcorbeau changed the title 🚪 Cloturer acteurs cessés/fermés 🚪 [ENRICH] Cloturer acteurs cessés/fermés Apr 21, 2025
@maxcorbeau maxcorbeau force-pushed the enrich_acteurs_closed_replace_v1 branch 2 times, most recently from 09afc1d to b233cf2 Compare April 24, 2025 05:27
Copy link
Contributor

@kolok kolok left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok pour moi à cndition que le DAG de rafraichissement des modèles DBT ne soit pas cassé.

A itérer selon la pair review

@maxcorbeau maxcorbeau force-pushed the enrich_acteurs_closed_replace_v1 branch from dca5e56 to 947e530 Compare April 24, 2025 10:20
@maxcorbeau maxcorbeau enabled auto-merge (squash) April 24, 2025 10:22
@maxcorbeau maxcorbeau merged commit 04f1a0a into main Apr 24, 2025
8 checks passed
@maxcorbeau maxcorbeau deleted the enrich_acteurs_closed_replace_v1 branch April 24, 2025 10:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants