LifePlay-Revival/Docs/Migration/etat/REPO/REP1/REP1-VAL-01.md
edujiro5972 8084622450 LifePlay UE 5.8 : état de développement au 2026-10-19
Tickets : REP1-T4

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-19 22:57:42 +02:00

10 KiB

REP1-VAL-01 : contrôle du contenu avant la première publication de ue5.8 (dépôt public)

Fiche REP1-VAL-01 — Niveau N1 — Modèle prévu sonnet | utilisé sonnet (claude-sonnet-5-5) — Agent : session « Sonnet · REP1-PUB », rôle lp-validator — Skills : sk-protocol, lp-validate. Date : 2026-10-19. Lecture seule du dépôt ; seuls écrits : ce fichier et REP1-VAL-01-fichiers.csv (même dossier).

Règle contrôlée : « GitHub sans contenu de jeu ni contenu sexuel » (Docs\27_Plan_Migration_UE58.md l. 70, règles PUB1 / PUB2 ; arbitrage etat\publication\PUB2\PUB2-ARB.md). PubCheck couvre les données personnelles ; ici : le contenu. Catégories : T mention technique (nom de variable, de tag, de module, de menu, signe de remplissage), E extrait de contenu de jeu (libellé d'interface, nom d'asset, tag), S contenu sexuel explicite (texte de scène ou phrase crue du jeu reproduite).

1. Verdict : FAIL (à retirer ou reformuler avant publication)

Deux familles de fichiers ne respectent pas la règle ; le reste est conforme à l'arbitrage PUB2 (noms de tags, libellés d'actions, variables : gardés).

# Fichier(s) Pourquoi Action proposée
1 Docs/Migration/etat/publication/PUB2/PUB2-CART.md reproduit en citation des phrases explicites ou crues extraites des fichiers de jeu (explanation.lpdesc, Change_Logs.txt, Writing_Sex_Text, UI) : 14 lignes entre guillemets avec terme fort (l. 45, 46, 47, 48, 50, 56, 105, 116, 142…) ne pas publier, ou réécrire les citations en descriptions (« phrase crue, 12 mots »)
2 Docs/Migration/etat/publication/PUB2/PUB2-SIM.md liste de blobs avec comptes de termes explicites et quelques phrases crues d'interface citées (l. 43-45, 53, 137-139) idem
3 Docs/Migration/etat/portage55/L0/L0_headers_Content.csv, portage55/L4-CX-B07/L4-CX-B07_headers_avant.csv, …_apres.csv (8 564 lignes chacun environ) inventaire de tous les chemins d'assets du contenu (Content\Heavy\Daz\Anims\…), dont des noms d'animations explicites ; équivalent des journaux FileOpenOrder que PUB2-ARB a retirés de l'historique pour le même motif ; absents de origin/main retirer de l'arbre publié (ou publier une version sans la colonne des noms)

Fichiers à écarter aussi par prudence (même nature, plus léger) : portage55/L0/L0_md5_UI.csv (noms d'assets d'interface).

2. Périmètre et comptes bruts

Mesure Valeur Commande
Fichiers de ue5.8 (HEAD 715efb4) 2 169 git ls-tree -r --name-only ue5.8 | sort
Fichiers de origin/main (HEAD d4d9726) 876 git ls-tree -r --name-only origin/main | sort
Nouveaux (dans ue5.8, pas dans main) 1 390 : 1 331 Docs/Migration, 6 Docs/correctifs, 14 Source/LifePlay, 38 autres de Docs/ comm -23 ue58 main
Non suivis, non ignorés (vague 2) 40 git ls-files -o --exclude-standard
Suivis et modifiés 8 (dont LifePlay.uproject) git diff --name-only
Fichiers balayés (réunion) 1 431, tous lisibles scratchpad rep1\perimetre.txt
Extensions des nouveaux 1 276 .md, 90 .csv, 7 .h, 7 .cpp, 6 .patch, 3 .py, 1 .jsonl sed 's/.*\.//'
Noms de fichiers du périmètre contenant un terme explicite 0 grep -i -E -f tierA perimetre
Fichiers de contenu (.lpscene, .lpaction, .lpquest, .lpmod, .lpcharacter, .uasset, médias) dans le périmètre 0 grep -i -E "\.(lpscene|…)$"

Le périmètre réel dépasse la liste de la fiche : les 40 non suivis comprennent aussi AG/ORGA2/, OUT/, CG/, des tickets REPO/tickets/* et Docs/LP-PROJET.ini, tous balayés.

3. Balayage mécanique

Motifs : une liste de 60 termes explicites (organes, actes, violence sexuelle, nudité, sites adultes), mots entiers, insensible à la casse (grep -I -i -o -w -E -f tierA). Résultat :

Catégorie Fichiers Détail
S 2 PUB2-CART.md, PUB2-SIM.md
E 9 4 inventaires d'assets (famille 3 ci-dessus) ; 5 fichiers qui citent des libellés ou tags de jeu : ST/STE/STE-ORG-AUDIT.md, STE-ORG4c-SPEC.md, STE-ORG5-SPEC.md (libellés d'actions d'interface et noms de tags d'animation, ex. « Close to cumming… », listes de tags), Source/LifePlay/LPBonusRewardSubsystem.cpp et .h (table de tags d'animation en C++)
T 94 variables et stats (compteurs d'orgasme, Genital, Cum), signes de remplissage « xxx » (32 fichiers), noms de modules vin_* (12 fichiers), mots d'une liste (bondage, bdsm) dans les inventaires de modules
Total fichiers à constat 105 liste complète et catégorie par fichier : REP1-VAL-01-fichiers.csv

Comptes par terme (fichiers) : penis 26, vagina 18, orgasm 39, anal 220 (faux positifs : « analyse »), cum 96 (faux positifs : « cumul »), xxx 32, genital 24, bondage 12, bdsm 11, blowjob 5, dick 5, incest 5, boob 5, rape 3, porn 3, dildo 7 ; « fuck » 2 et « pussy » 2 : uniquement les deux fichiers PUB2.

4. Fichiers à constat (extraits décrits, jamais reproduits)

Chemin Ligne Cat. Description
Docs/Migration/etat/publication/PUB2/PUB2-CART.md 45, 46, 47 S citation entre guillemets de phrases de scène du guide de modding (acte, parties du corps), 10 à 15 mots chacune
id. 48, 50, 56, 105, 116, 142 S citations de répliques crues, de journal des changements et de libellés d'interface
…/PUB2/PUB2-SIM.md 43-45, 53, 137 S comptes de termes par blob et deux répliques d'interface crues citées
…/portage55/L0/L0_headers_Content.csv 2979, 2983, 2988… (46 lignes à terme fort) E chemins d'assets d'animations de contenu pour adultes (nom de fichier seulement)
id. L4-CX-B07_headers_avant.csv, _apres.csv mêmes lignes E idem, copies
…/ST/STE/STE-ORG-AUDIT.md 53, 71, 115 E libellés d'actions d'interface (4 variantes) du menu des scènes ; texte d'info-bulle court non graphique
…/ST/STE/STE-ORG4c-SPEC.md 12, 39, 105, 216 E libellé d'état d'interface et condition sur la variable Genital ; lecture de Blueprint
…/ST/STE/STE-ORG5-SPEC.md 46, 263 E table de tags d'animation (noms)
Source/LifePlay/LPBonusRewardSubsystem.cpp 283-298 E table C++ de noms de tags d'animation ; noms seulement, comme All_sex_tags.txt gardé par PUB2-ARB
…/publication/PUB1/PUB1-CART.md 32 T cite 5 noms de personnages de célébrités des préréglages ; pas sexuel, mais à voir côté droit à l'image
…/EVAL2/AMEL1/R2/cas-v2.jsonl, EVAL2/data/refus.csv 52 ; 243 T cas d'essai du crochet ; le terme est un mot d'une commande de test
Docs/Journal_Modifications.md, Docs/Registre_Erreurs.md, Docs/29_…md — T noms de variables et de fonctions dans le journal

5. Content, Source, Plugins, Config par rapport à origin/main

git diff --name-status origin/main ue5.8 -- Content Source Plugins Config : A 14, D 32, M 335.

Dossier Constat
Source/LifePlay 14 ajoutés (LPBonusRewardSubsystem, LPCameraModeSubsystem, LPModGuard, LPReadableTextSubsystem, LPSaveRelaunch, LPUserSettings, LPWidgetStyleLibrary, .h et .cpp) : seul LPBonusRewardSubsystem contient des termes (tags d'animation et variables, cat. E) ; LPReadableTextSubsystem : 1 mention de « Sex Moan Pitch Multiplier » en commentaire (T)
Source/LifePlayEditorTools 32 supprimés (commandlets de correction), 10 modifiés : aucun terme
Plugins/LPAnimCore/…/LPCoupleSimCore.cpp 1 mot de liste de morphs (« breast », T)
Content/ 292 .uasset modifiés (195 UI, 57 Structs, 27 BPs, 11 Render, etc.), 0 ajouté, 0 supprimé ; comparaison chaîne à chaîne des termes explicites entre origin/main et ue5.8 : 1 510 → 1 539 occurrences (+29), 25 fichiers en contiennent, 3 en ont moins ; 8 en ont plus (GI, PC, Person, BodyShapeMenu, CensoreBoobs, CharGen, Cursor, SexOrgasmEnergy) ; les chaînes propres à ue5.8 sont des noms de variables, de widgets, d'animations et de boutons (« Penis », « Vaginal », « Doggy »…), aucune phrase ; différence due à la resauvegarde en 5.8 (non établi)
Config/ 3 .ini modifiés : aucun terme

Je n'ai pas examiné visuellement les textures, icônes ni sons (hors périmètre de la fiche, comme PUB2).

6. Commandes exactes

git ls-tree -r --name-only ue5.8 | sort > ue58.txt
git ls-tree -r --name-only origin/main | sort > main.txt
comm -23 ue58.txt main.txt > new.txt            # 1 390
{ cat new.txt; git ls-files -o --exclude-standard; git diff --name-only; } | sort -u > perimetre.txt   # 1 431
xargs -0 grep -I -i -l -E -f tierA.txt < existants   # 105 fichiers
awk -f prose.awk (lignes à 2 termes forts ou plus)
git diff --name-status origin/main ue5.8 -- Content Source Plugins Config
git cat-file blob <ref>:<f> | tr -d '\000' | grep -a -o -i -E <motifs> | wc -l   # 292 uasset, 2 refs

Les scripts et listes sont dans le scratchpad de la session (…\scratchpad\rep1\).

7. Limites

  • Le balayage est lexical : une phrase explicite sans l'un des 60 termes, ou en une autre langue que l'anglais et le français, n'est pas vue. Les mots de scène dans les inventaires de modules en .csv sont comptés sans lire chaque ligne.
  • Les 94 fichiers T ont été classés par motif (variable, « xxx », nom de module) et lus par échantillon (≈ 25 lignes), non intégralement.
  • Le contenu des modules de jeu (hors dépôt) n'est pas dans le périmètre ; seuls leurs noms le sont.
  • Les .uasset sont lus comme chaînes ; les assets n'ont pas été ouverts.

8. Fichiers à commiter

A : Docs/Migration/etat/REPO/REP1/REP1-VAL-01.md, Docs/Migration/etat/REPO/REP1/REP1-VAL-01-fichiers.csv. Aucun autre fichier du dépôt modifié par cette fiche.

Tours : environ 27 / 25 (dépassement léger pour écrire le livrable). À verser : lp-repo — avant toute publication de Docs/Migration/etat/, exclure les inventaires portage55/**/*headers*.csv et publication/PUB2/PUB2-CART.md, PUB2-SIM.md. Suite : Big Boss doit décider du retrait ou de la réécriture des 5 fichiers de § 1 avant la branche pub/ue5.8 ; état : balayage terminé, livrable écrit.