# Seuils, priorisation et modulateurs

Tout ce qui doit produire le même verdict d'un run à l'autre. Un audit dont les seuils flottent ne permet ni de comparer deux pages, ni de mesurer un progrès.

## Statuts de densité (C2)

| Statut | Règle |
|---|---|
| ✅ Conforme | 70 % ≤ densité mesurée ≤ 200 % de la cible |
| 🟡 Sous-densifié | 0 < densité < 70 % de la cible |
| 🟠 Sur-densifié | densité > 200 % de la cible |
| ❌ Absent | 0 occurrence, toutes variantes confondues |
| ⚠️ Hors scope | terme absent de la carte, ≥ 3 occurrences et (≥ 5 occurrences ou ≥ 0,15 % de densité) |

Ces seuils sont appliqués par `scripts/count_density.py` — ne pas les recalculer à la main, et ne pas les ajuster au cas par cas.

**Sur-densifié n'est pas anodin** : au-delà du double de la cible, l'entité occupe une place que d'autres devraient prendre. Sur une page qui échoue par ailleurs en couverture, une entité sur-densifiée est souvent le symptôme du problème — le rédacteur a tourné autour d'un seul concept.

**Sous 500 mots**, les statuts de densité ne sont pas interprétables : les cibles de la carte sont calibrées sur 2000 mots, et une occurrence unique dépasse n'importe quelle cible. Le script émet un avertissement ; lire les occurrences brutes et le dire dans le rapport.

## Statuts de fréquence (C3)

Mêmes ratios (70 % / 200 %), appliqués à un nombre d'occurrences attendu plutôt qu'à une densité.

## Surprise Score Sémantique 0-100

Recalculé sur le contenu audité, quatre composantes pondérées :

```
30 % — Ratio entités propriétaires conformes / entités propriétaires attendues
20 % — Ratio verbatims Haute Surprise / verbatims présents
25 % — Distance lexicale propriétaire ↔ consensus (1 - cosinus simulé)
25 % — Présence Quotation Addition + Statistics Addition
```

| Score | Verdict |
|---|---|
| 0-30 | Médiocrité statistique — refonte ou abandon |
| 30-60 | Acceptable mais réplicable — corrections P1 obligatoires |
| 60-85 | Information Gain validé — publication OK |
| 85-100 | Inversion experte maximale |

Avertissement obligatoire sous le score :

> *« Score calibré sur projection corpus Claude. Pour une calibration exacte : audit GEO avec scores algorithmiques. »*

Le cosinus qui alimente la troisième composante est simulé, pas calculé. Présenter un chiffre simulé comme mesuré ferait prendre des décisions de refonte sur du sable.

## Priorisation P0 / P1 / P2

Les onze couches ont chacune un niveau. Une couche sans niveau assigné oblige à improviser en pleine rédaction, et deux audits de la même page ne se prioriseraient plus pareil.

| Niveau | Déclencheur | Conséquence SERP |
|---|---|---|
| **P0** | • Entité P1 de C2 absente, ou expression exacte de la requête à 0 occurrence en C3<br>• C7 : couverture standard < 70 %<br>• Gap sur un champ **observable** de C10<br>• Une phase entière de la Triade non couverte (C11) | Ne franchit pas l'admission |
| **P1** | • Gap sur C4, C5 ou C8<br>• C1 : micro-intention décisionnelle absente (celles qui portent un arbitrage : seuil, coût, risque, réversibilité)<br>• C2 : entité P1 présente mais sous-densifiée<br>• Surprise Score < 60<br>• Hors scope ≥ 0,5 % de densité | Indexé mais Low Surprise |
| **P2** | • Gap sur C6 ou C9<br>• C1 : micro-intention secondaire absente ou effleurée<br>• C3 : n-gram P2 absent<br>• Hors scope < 0,5 % | Ranke sans maximiser la génération |

Le principe qui répartit les couches : **le niveau suit le mécanisme bloqué, pas l'effort de correction.** C2 et C3 sont en P0 non parce qu'ils sont durs à corriger, mais parce que les entités canoniques et l'expression de la requête sont ce sur quoi le filtre d'admission s'appuie — sans elles, tout le reste du travail ne sera jamais vu. À l'inverse, une FAQ absente (C9) laisse la page rankable ; elle plafonne seulement sa reprise en AI Overview.

**Le cas où le plan ne suffit pas.** Quand C2 accumule les entités P1 absentes *et* que C7 est très en dessous du seuil (couverture standard sous ~20 %), le diagnostic n'est plus « corriger cette page » mais « cette page traite un autre sujet ». Le dire explicitement plutôt que de produire quinze actions de réécriture qui ne convergeront pas : la bonne action est alors de créer une page dédiée, et de ne garder sur la page auditée que les corrections qui la servent indépendamment de la requête. Un plan de correction qu'on ne peut pas exécuter sans dénaturer la page n'est pas un plan.

Chaque niveau est adossé à un mécanisme, pas à une impression : c'est ce qui rend le plan explicable à un client sans jargon d'agence. Un P0 signifie que la page n'entre pas dans l'index utile, pas qu'elle est « importante à corriger ».

**C10 et observabilité** : un champ `N/A` ne produit jamais de P0. Si tous les champs structurels sont `N/A`, écrire dans le plan « P0 structurels non évaluables sur cette source — relancer avec l'URL ou le HTML rendu ». Un plan vide de P0 ne doit jamais pouvoir se lire comme « aucun bloquant ».

## Modulateurs de version cible

La version cible réoriente la priorisation. Sans elle, `refonte` s'applique et le rapport le mentionne.

| Version cible | Effet |
|---|---|
| **refonte** | Priorisation standard, tous les gaps ouverts |
| **update freshness** | C5 remonte en P0 — le Freshness Guard devient le critère central ; les gaps structurels déjà conformes sont rétrogradés |
| **élargissement** | C1 (micro-intentions orphelines) et C9 remontent en P0 ; ⚠️ hors scope rétrogradé — on élargit, on ne resserre pas |
| **migration** | C10 et C11 en P0 exclusifs — l'enjeu est la préservation du retrieval, pas l'enrichissement |

La logique : un audit avant refonte et un audit avant migration ne cherchent pas la même chose. Sur une migration, ajouter des pain points n'a aucun intérêt — ce qui compte est que la page ne perde pas son retrieval. Appliquer la même priorisation aux quatre cas produirait un plan techniquement juste et pratiquement inutilisable.

## Score de couverture

```
Score de couverture : X/N couches conformes  (N = couches observables)
```

Une couche est conforme quand elle n'a aucun gap P0 ni P1. Une couche entièrement non observable sort du dénominateur ; une couche partiellement observable y reste. Annoncer le dénominateur, jamais un score nu — « 6/10 observables » et « 6/11 » ne disent pas la même chose.
