9.3 KiB
Fiche PUB-20261020-VAL — Niveau N1 — Modèle prévu sonnet | utilisé sonnet (claude-sonnet-5-5) — Agent lp-validator — Skills sk-protocol, sk-recount, debug-verification, lp-validate
PUB-20261020-VAL : contrôle du contenu avant le push du commit de publication (2026-10-20)
Lecture seule du dépôt ; seul écrit : ce fichier. Modèle : REP1-VAL-01.md. Règle : doc 27 l. 70 (« sans contenu de jeu ni contenu sexuel »). Diff contrôlé : git diff 8084622 b5feae4.
1. Fiches amont relues
etat\REPO\REP1\REP1-VAL-01.md(modèle de contrôle, catégories T / E / S).- Fiche de la session (rubriques 1 à 5).
REP1-T4.mdetPUB3-T3-SPEC.md§ 7 (procédure) : non relus ici, la procédure ne change pas le contenu contrôlé. - Pas d'IMPL amont : section 2
sans objet : contrôle de contenu, aucune IMPL ni point à confirmer.
2. Points à confirmer des IMPL
sans objet : aucune IMPL dans cette fiche.
3. Critères rejoués
Refs (établi, git rev-parse HEAD ue5.8 pub/ue5.8 origin/ue5.8) : ue5.8 = HEAD = b5feae46e615724389a4008edc190ae03eec745d ; pub/ue5.8 = origin/ue5.8 = 8084622450e0cce9c9dafcfea77c9afbd685d3e6.
| # | Critère | Commande | Résultat | Verdict |
|---|---|---|---|---|
| 1 | PubCheck 0 constat | pwsh -NoProfile -File Tools/PubCheck.ps1 -Arbre ue5.8 -Binaires -Depot "D:/Game/LifePlay-master 5.8" </dev/null |
PubCheck : 0 constat(s), code 0 |
PASS |
| 2 | Contenu adulte explicite | voir § 3.2 | aucune phrase explicite ajoutée | PASS |
| 3 | Secrets, données personnelles | voir § 3.3 | aucun secret ; 1 réserve (hôte) | PASS avec réserve |
| 4 | Fichiers à exclure absents | voir § 3.4 | tous absents, sauf LifePlay.uproject (attendu) |
PASS |
| 5 | Binaires ajoutés | voir § 3.5 | 0 ajouté, 6 .uasset modifiés |
PASS |
3.2 Contenu adulte
Commande : git diff -U0 8084622 b5feae4 | grep -E '^\+' | grep -v '^+++' | grep -a -i -w -o -E '<liste de 45 termes : organes, actes, violence sexuelle, nudité, sites adultes, grossièretés>' | sort | uniq -c. Sortie brute : 4 xxx, 3 sex, 2 bondage. Aucun autre terme (ni fuck, pussy, cock, cum, dick, penis, vagina, blowjob, orgasm, rape, porn, dildo, boob, genital, nude…).
Les 9 occurrences, lues une à une (lignes 5755, 7550, 7561, 7595, 7671, 14439, 14441, 14444, 14477 du diff) :
xxxx4 : chemin localD:\XxX\LifePlay_2023_04_Stable_64bit(dossier d'un jeu empaqueté, journal de build) : cat. T, non sexuel.sexx3 : noms de widgetsUI/SexAction,UI/SexInterface(liste de tabulations), « Sex Show » (nom de section du menu clavier), citation d'une remarque de l'utilisateur sur l'axe vertical d'une caméra : cat. T / E, noms d'interface, aucune description.bondagex2 : nom de widgetUI/Bondage: cat. T.- Le texte l. 7561 dit lui-même que le détail n'est pas consigné (règle du doc 27) : conforme.
Contrôle par nom de fichier :
git diff --name-only 8084622 b5feae4 | grep -i -E 'sex|nude|porn': 0 ligne. Binaires : comptes de termes explicites dans les 6.uassetmodifiés, avant et après (git cat-file blob <ref>:<f> | tr -d '\000' | grep -a -o -i -E <motifs> | wc -l) : PC 57 -> 57 ; Room 4 -> 4 ; CharGen 105 -> 105 ; CharGenSlider 7 -> 7 ; MainMenu 11 -> 11 ; VisualMorph 2 -> 2. Aucun terme nouveau. Les identifiants déjà admis dans REP1-VAL-01 (SexOn, vin_*, noms de variables) n'apparaissent pas comme ajouts du diff au-delà des 9 lignes ci-dessus.
3.3 Secrets et données personnelles
- Jetons, mots de passe, clés (
password|passwd|mdp|token|secret|api[_-]?key|bearer|BEGIN … PRIVATE|ghp_|github_pat|AKIA|sk-…) sur les lignes ajoutées : aucune valeur. Les seules occurrences de « PASSWORD / PASSWD » sont des noms de variables et des recommandations sans valeur (STM1-SPEC-07.mdl. 408-413 :POSTGRES_PASSWORD,FORGEJO__database__PASSWD,FORGEJO_DB_PASSWD=…,'<nouveau>').git grep -n -i -E 'POSTGRES_USER|DB_USER|USER:|_USER=|PASSWD|PASSWORD|password' b5feae4 -- STM1-SPEC-07.md STM1-SPEC-08.md: 4 lignes, toutes ci-dessus ; aucun nom d'utilisateur de base. « Tokens » dans le C++ =TArray<FString> Tokens(analyse de ligne de commande), sans rapport. - Fiches STM1-SPEC-07 et suivantes : pas de mot de passe de serveur (Forgejo, base). Établi.
- E-mails :
grep -o -E '[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}'sur les lignes ajoutées : 0 résultat. - Adresses IP hors 127.0.0.1 et 0.0.0.0 : 0. Chemins de profil (
X:\Users\<nom>) : 0. Nom de profil Windows : 0. - Domaines cités : sites de documentation et de référence publics (docker.io, github.com, openstreetmap, etc.) et
forgejo.edujiro5972.fr(6 lignes, 3 fichiers :BOSS-ETAT.md,BOSS-JOURNAL.md,REP1\REP1-DOC-02.md). Absent de l'arbre8084622(git grep -c: 0 résultat) : nouveauté de ce commit. Réserve : c'est le nom d'hôte du serveur auto-hébergé de l'utilisateur, donné aussi parSTM1-SPEC-07.md(noms de conteneurs, ports 80 / 443 / 2222, procédure de redéploiement). Ce n'est ni un secret ni une donnée personnelle au sens de PubCheck (0 constat), mais c'est une information d'infrastructure ; case en § 6. - Identité Git : la ligne citée
…@users.noreply.github.comest le gabarit de contrôle C3, sans adresse réelle.
3.4 Fichiers à ne pas publier
Commande : git ls-tree -r --name-only b5feae4 | grep -i -E 'LifePlay\.uproject|LP-PROJET\.ini|AG/ORGA2|\.log$|DC2-BUILD'. Sortie brute : LifePlay.uproject (une seule ligne).
Docs/LP-PROJET.ini: absent de l'arbre (non suivi :?? Docs/LP-PROJET.inidansgit status --short).Docs/Migration/etat/AG/ORGA2/: absent (non suivi,??).*.log(dontetat\BOSS\COMMUN-*) : 0 fichier suivi.Docs/Migration/etat/sandbox/DC2/DC2-BUILD.md: absent.LifePlay.uproject: suivi, donc présent dans l'arbre, mais c'est la version commitée (publique, présente aussi dans8084622), non la copie locale.git diff 8084622 b5feae4 -- LifePlay.uproject | wc -l: 0 (identique à ce qui est déjà publié). La modification locale (M LifePlay.uprojectdu statut) n'est pas dans le commitb5feae4. Conforme, à condition que le commit de publication prenne l'arbre deb5feae4et non l'index ou le répertoire de travail.- Autres fichiers modifiés localement et non commités (
BOSS-ETAT.md,BOSS-JOURNAL.md,STM1-TACHES.md,FILE.md) : hors du commit si l'arbre vient deb5feae4. Arbre : 2 396 fichiers (git ls-tree -r --name-only b5feae4 | grep -c .) contre 2 215 pour8084622.
3.5 Binaires ajoutés
git diff --name-status 8084622 b5feae4 | grep -i -E 'uasset|umap|\.(png|jpg|wav|mp3|zip|dll|exe|bin)$' : 6 lignes, toutes M, aucune A. Aucun binaire ajouté ; aucun média, archive, DLL ni exécutable.
| Fichier (modifié) | Taille avant (octets) | Taille après (octets) |
|---|---|---|
| Content/BPs/PC.uasset | 3 420 303 | 3 410 606 |
| Content/BPs/Room.uasset | 6 428 769 | 6 392 085 |
| Content/UI/CharGen.uasset | 5 054 038 | 5 063 130 |
| Content/UI/CharGenSlider.uasset | 455 140 | 447 967 |
| Content/UI/MainMenu.uasset | 2 260 418 | 2 245 771 |
| Content/UI/VisualMorph.uasset | 327 185 | 333 578 |
Source : git cat-file -s <ref>:<fichier>. Le plus gros reste sous 6,5 Mo.
4. Diff lu en entier
git diff --name-status 8084622 b5feae4 | awk '{print $1}' | sort | uniq -c : 181 A, 25 M, soit 206 fichiers (confirme git diff --stat : « 206 files changed, 16599 insertions(+), 79 deletions(-) »). Hors .md : 27 fichiers (Config/DefaultInput.ini, 6 .uasset, 15 sources Source/LifePlay, 5 sources Source/LifePlayEditorTools).
Méthode : balayage des lignes ajoutées par motifs (§ 3.2, § 3.3) et lecture des lignes à constat. Les 16 599 lignes n'ont pas été lues une à une ; les sources C++ ne contiennent aucun des termes cherchés.
5. Verdict : PASS (avec une réserve, § 6)
Les cinq contrôles de la fiche sont conformes. PubCheck : 0 constat. Aucun contenu sexuel explicite ajouté. Aucun secret. Les fichiers exclus sont absents. Aucun binaire ajouté.
PubCheck sur ce livrable : voir ligne finale.
6. Points à confirmer par l'utilisateur
- Le nom d'hôte
forgejo.edujiro5972.fr(3 fichiersetat/) peut apparaître dans le dépôt qui le reçoit. Si le dépôt de destination est public et que l'hôte doit rester discret, retirer ces lignes avant le commit (décision de l'utilisateur, non bloquante pour PubCheck). - Le commit de publication prend l'arbre de
b5feae4(git commit-tree b5feae4^{tree} -p pub/ue5.8), pas le répertoire de travail : sinonLifePlay.uprojectlocal etDocs/LP-PROJET.iniseraient embarqués.
Limites (non mesuré)
- Balayage lexical (anglais, français) : une phrase explicite sans l'un des termes n'est pas vue. Textures, icônes, sons non examinés. Contenu des modules hors dépôt hors périmètre.
- Le contrôle du contenu porte sur le diff
8084622..b5feae4, non sur les 2 215 fichiers déjà publiés (cf. REP1-VAL-01).
Fichiers à commiter
A : Docs/Migration/etat/REPO/PUB/PUB-20261020-VAL.md (ce livrable). Aucun autre fichier modifié par cette fiche.
Tours : 10 / 40
À verser : lp-repo — avant le commit de publication, prendre l'arbre par b5feae4^{tree} : LifePlay.uproject et Docs/LP-PROJET.ini locaux ne sont pas dans le commit.
Suite : Big Boss doit donner la commande de push (arbre de b5feae4, parent pub/ue5.8) après réponse aux deux cases du § 6 ; état : contrôle terminé, PASS.