Fiche MAPDL1-ESSAI-FJ — Niveau N2 — Modèle prévu opus medium | utilisé claude-opus-5-5 — Agent session « Medium · MAPDL1 » — Skills sk-protocol, lp-city # MAPDL1 : essai du téléchargement dans le jeu par les releases du Forgejo de l'utilisateur (fiche préparée, rien publié) (2026-10-22) Cette fiche remplace `MAPDL1-ESSAI-GH.md`, qui est gardée pour mémoire. Le modèle GitHub reste disponible dans `IndexCartes.ps1`. Décision de l'utilisateur, citée par Big Boss : « Finalement, utilise les releases de mon Forgejo pour les essais. » Instance : `forgejo.edujiro5972.fr`. Dépôts connus : `edujiro5972/LifePlay-Revival` (jeu) et `edujiro5972/LifePlay-Sandbox` (addon), d'après `lp-paths`. **Une release est une publication.** Les étapes F1 à F3 sont **des gestes de l'utilisateur**, ou se font avec son accord explicite, action par action. Aucune n'est faite par cette fiche. ## Questions pour l'utilisateur (posées par Big Boss) 1. Quel dépôt porte les releases d'essai ? - `edujiro5972/LifePlay-Revival` ; - `edujiro5972/LifePlay-Sandbox` ; - ou un dépôt dédié, par exemple `edujiro5972/LifePlay-Cities` (idée de `STM1-SPEC-07` § 3). 2. **Ce dépôt est-il public ?** La visibilité du Forgejo est « à confirmer » (`lp-paths`). Le jeu télécharge **sans authentification** : un dépôt privé ne peut pas servir. Le jeu ne porte aucun jeton, et n'en portera pas. 3. Quel tag ? Proposition : `cartes-test-1`. 4. Accord pour F1 (création de la release), puis pour F2 et F3 (appels au réseau). ## Packs d'essai | Pack | Archive (`D:\Game\LifePlay_Publication\Mods\`) | Octets | SHA-256 | |---|---|---:|---| | Manila 1.0.1 | `lpm_city_manila-1.0.1-for-LifePlay-2026.10.2.2a.zip` | 22 075 120 | `2BA28C4EDFB98E7B0265BE719E3A42489F0FD79B17268C6EE9F3FBE2DC08B4CF` | | Shanghai 1.0.1 (facultatif) | `lpm_city_shanghai-1.0.1-for-LifePlay-2026.10.2.2a.zip` | 34 179 497 | `DF9CD279E65842CC7301C84A86415FAD3E00F8FFC72F6441C35E38515C5D8D7B` | Lien de téléchargement visé : `https://forgejo.edujiro5972.fr///releases/download//lpm_city_manila-1.0.1-for-LifePlay-2026.10.2.2a.zip` ## Points à vérifier (aucun n'est établi) | # | Point | Comment le trancher | |---|---|---| | V1 | **Téléchargement anonyme** : il exige un dépôt public (et une instance qui n'oblige pas à se connecter pour lire) | F2 : `curl -I` sans identifiants. Attendu : `200`, et non `401`, `403`, ni une page de connexion | | V2 | **`Range` et `206`** sur les pièces jointes de release | F2 : `curl -r 0-3`. Attendu : `206` et `Content-Range: bytes 0-3/22075120` (`STM1-SPEC-07` § 3 notait déjà « à vérifier ») | | V3 | **Redirection éventuelle** (par exemple vers un stockage d'objets si l'instance en utilise un) | F2 : `curl -I -L`. Noter chaque `Location:`. Le client HTTP du jeu doit la suivre (E1) | | V4 | **Taille maximale des pièces jointes** : réglage `[attachment] MAX_SIZE` de l'instance (`STM1-SPEC-07` § 3) | réglage lu par l'utilisateur sur son serveur, ou constaté à l'envoi. Les plus gros packs actuels font de 68 Mo (MexicoCity 1.0.1) à 98 Mo (Bangalore 1.0.0), voire plus en 1.0.1 avec la 3D classique | | V5 | **Création de la release** | par l'interface web (geste de l'utilisateur), ou par l'API avec un jeton **gardé par l'utilisateur** : variable d'environnement ou gestionnaire d'identifiants Windows, jamais dans un fichier du projet | ## F1. Création de la release (geste de l'utilisateur, ou avec son accord) **Interface web** : 1. dépôt `/`, puis « Releases », puis « New release » ; 2. tag `cartes-test-1`, titre « City map packs (test) » ; 3. notes : « Test release for in-game download (MAPDL1). Map data (c) OpenStreetMap contributors, ODbL 1.0. » ; 4. pièce jointe : le zip de Manila ; 5. « Publish ». **Par l'API** (si l'utilisateur le préfère ; jeton dans `$env:FORGEJO_TOKEN`, que l'utilisateur pose lui-même dans sa session) : ```powershell $h = @{ Authorization = "token $env:FORGEJO_TOKEN" } $r = Invoke-RestMethod -Method Post -Headers $h -ContentType 'application/json' ` -Uri "https://forgejo.edujiro5972.fr/api/v1/repos///releases" ` -Body (@{ tag_name = 'cartes-test-1'; name = 'City map packs (test)'; body = 'Test release for in-game download (MAPDL1). Map data (c) OpenStreetMap contributors, ODbL 1.0.' } | ConvertTo-Json) curl.exe -sS -H "Authorization: token $env:FORGEJO_TOKEN" -F "attachment=@D:\Game\LifePlay_Publication\Mods\lpm_city_manila-1.0.1-for-LifePlay-2026.10.2.2a.zip" "https://forgejo.edujiro5972.fr/api/v1/repos///releases/$($r.id)/assets?name=lpm_city_manila-1.0.1-for-LifePlay-2026.10.2.2a.zip" ``` Les points d'accès `/api/v1/repos/{owner}/{repo}/releases` et `…/releases/{id}/assets` sont **à vérifier** sur la version de Forgejo installée (la 9, d'après `STM1-SPEC-07` § 7 bis), dans sa page d'aide de l'API (`/api/swagger`). ## F2. Tests d'accès anonyme, de redirection et de Range (avec accord) ```powershell $u = "https://forgejo.edujiro5972.fr///releases/download/cartes-test-1/lpm_city_manila-1.0.1-for-LifePlay-2026.10.2.2a.zip" curl.exe -sS -I -L $u curl.exe -sS -L -r 0-3 -o NUL -D - $u ``` Résultats attendus : - **V1** : statut final `200`, `Content-Length: 22075120`, sans `401` ni `403` ; - **V3** : chaque redirection notée (`Location:`), ou aucune ; - **V2** : la seconde commande rend `206 Partial Content` et `Content-Range: bytes 0-3/22075120`. Le relevé est à coller tel quel. Sans `206`, le jeu reprend de zéro (il le gère), et c'est à noter. ## F3. Contrôle du fichier (avec accord) ```powershell New-Item -ItemType Directory -Force "D:\Game\LifePlay_Data\Mega-essai\FJ-essai" | Out-Null curl.exe -sS -L -o "D:\Game\LifePlay_Data\Mega-essai\FJ-essai\manila.zip" $u (Get-FileHash "D:\Game\LifePlay_Data\Mega-essai\FJ-essai\manila.zip" -Algorithm SHA256).Hash ``` Attendu : `2BA28C4EDFB98E7B0265BE719E3A42489F0FD79B17268C6EE9F3FBE2DC08B4CF`. ## F4. JSON d'essai (sans réseau, après E1) ```powershell pwsh -NoProfile -File "D:/Game/LifePlay-master 5.8/Tools/IndexCartes.ps1" -Villes Manila -Hebergeur Forgejo -ForgejoHote forgejo.edujiro5972.fr -Owner -Repo -Tag cartes-test-1 -Sortie "D:\Game\LifePlay_Data\Mega-essai\FJ-essai\LPCityMaps.json" ``` Attendu : une entrée Manila avec `urls = ["https://forgejo.edujiro5972.fr///releases/download/cartes-test-1/lpm_city_manila-1.0.1-for-LifePlay-2026.10.2.2a.zip"]`, `octets` 22075120 et `sha256` `2BA28C4E…`. Le modèle GitHub reste disponible : `-Hebergeur GitHub -Owner -Repo -Tag`. ## F5. Essai en jeu (E4, Big Boss) > **Remplacé** le 2026-10-22 par la partie C de `MAPDL1-TESTS-02.md`. Les mêmes cas que `MAPDL1-ESSAI-GH.md` § G5 (T1 à T7) : - Download only ; - Full install depuis le zip déjà présent ; - reprise par `Range` ; - passage au miroir sur un `404`. Manila doit être désinstallée de la build d'essai au préalable, par déplacement. Journal à relever : lignes `[LPCity] DOWNLOAD` (statut, URL finale après redirection, octets, SHA-256) et `[LPCity] INSTALL`. ## Compte rendu - **Résultat** : fiche préparée. Rien n'est publié, rien n'est appelé sur le réseau. - **Fichier** : `D:\Game\LifePlay-master 5.8\Docs\Migration\etat\REL\MAPDL1\MAPDL1-ESSAI-FJ.md` (A). - **Suite** : Big Boss pose les 4 questions et demande les accords pour F1, puis pour F2 et F3 ; F4 et F5 viennent après E1 et E2.