diff --git a/docs/chronotrack/README.md b/docs/chronotrack/README.md
index 23c99493..8aafb660 100644
--- a/docs/chronotrack/README.md
+++ b/docs/chronotrack/README.md
@@ -43,7 +43,9 @@ La **liste** meta renvoie plutôt :
`fx_chronotrack_verify.php` mappe ces alias — sinon faux écarts « CT ∅ ».
**Écriture pays/région** : seulement `location_country` / `location_region` / `country_name`
-(pas `country_code` / `state_code` — collision possible → QC dans le pays).
+(pas `country_code` / `state_code` — collision possible → QC dans le pays).
+Si province **canadienne** (ex. `QC`) et pays MS1 ≠ `CA` → **province non envoyée** + log `skip_region`
+(pas de réparation auto du pays ; pas de faux écart à la vérif).
**Push** (règle produit MSIN-4574 — **correctitude > vitesse**) :
- entry déjà dans CT (`entry_id`) → **PUT** unitaire (écrase pays / région / bib)
diff --git a/php/chronotrack_api/fx_chronotrack_admin.php b/php/chronotrack_api/fx_chronotrack_admin.php
index 5aa0b06d..9197a74b 100644
--- a/php/chronotrack_api/fx_chronotrack_admin.php
+++ b/php/chronotrack_api/fx_chronotrack_admin.php
@@ -2022,7 +2022,9 @@ function fxChronotrackApiAdminRenderPageScript($intEveId, $arrConfig, $blnClosed
+ 'envoi_bib= valeur envoyée, '
+ 'conflit_bib = dossard différé (2e passe / swap via PUT clear), '
+ 'RETRY_BIB = 2e tentative. '
- + 'Si la 2e passe échoue → erreur visible.
skip_region = province MS1 non envoyée (ex. QC + pays France) '
+ + '— saisie incohérente, pas un bug d’envoi.';
html += '| Quand | Action | Statut | par_id | Message |
|---|