9.2 KiB
OPT0-A2-INV : inventaire Blueprint par MCP de la copie 5.8 (LIVRABLE PARTIEL)
Fiche OPT0-A2 — Niveau N1 — Modèle prévu sonnet | utilisé Sonnet 5.5 — Agent lp-mcp — Skills : sk-protocol, lp-mcp, sk-change-safety
Date du relevé : 2026-10-15. Lecture seule : aucun appel d'écriture MCP, aucune PIE, aucun asset sauvegardé.
Résultat : arrêté au budget de méthode (voir § 7). Sans verdict : la grille de décision est la fiche A3.
1. Périmètre
- Copie :
D:\Game\LifePlay-master 5.8(LifePlay.uproject),/Gameseulement, éditeur headless déjà lancé par l'orchestratrice (port 8000). - Blueprints énumérés : 110 (comptage manuel de la liste renvoyée par
find_assets, estimé ; la sortie n'a pas été enregistrée en fichier). Répartition lue dans les chemins :/Game/BPs36,/Game/UI62,/Game/Heavy/New4/Notifies3,/Game/FreeAnimationsPack/Demo/Characters/Mannequins7 (2ABP_, 3CR_, 2ABP_..._PostProcess) — répartition estimée, non recomptée par script. - Filtre de classe :
/Script/Engine.Blueprint; la liste inclut donc des sous-classes (widgets sous/Game/UI,ABP_*,CR_*). Classe exacte de chaque asset : non relevée. - Blueprints dont les graphes ont été lus : 3 sur 110 (CameraShake : graphes listés ; Person : graphes listés et un graphe parcouru ; voir § 5).
2. Appels MCP exacts (18 appels, tous en lecture)
| # | Outil (toolset) | Paramètres | Résultat |
|---|---|---|---|
| 1 | list_toolsets |
— | liste reçue (état prouvé) |
| 2 | AssetTools.find_assets |
{} |
erreur de schéma (paramètres requis), schéma lu |
| 3 | AssetTools.find_assets |
{folder_path:"/Game", name:"", asset_type:{refPath:"/Script/Engine.Blueprint"}, recursive:true} |
110 chemins |
| 4 | BlueprintTools.find_nodes |
{} |
erreur de schéma, schéma lu (graph, title, node_class, entry_points_only) |
| 5 | BlueprintTools.get_graphs |
{} |
Unknown tool get_graphs |
| 6 | BlueprintTools.get_graph |
{blueprint:CameraShake, graph_name:""} |
Cannot find graph in Blueprint |
| 7 | BlueprintTools.get_graph |
{blueprint:CameraShake, graph_name:"EventGraph"} |
refPath du graphe seul |
| 8 | ObjectTools.get_properties |
{object,...} |
erreur de schéma (instance, properties) |
| 9 | ObjectTools.get_properties |
{instance:CameraShake, properties:[UbergraphPages,FunctionGraphs,MacroGraphs]} |
erreur : propriétés non lisibles (résolu sur le CDO) |
| 10 | BlueprintTools.list_graphs |
{} |
erreur de schéma (blueprint) |
| 11 | BlueprintTools.list_graphs |
{blueprint:CameraShake} |
1 graphe : EventGraph |
| 12 | BlueprintTools.find_nodes |
{graph:CameraShake:EventGraph, title:""} |
[] (0 nœud) |
| 13 | describe_toolset |
HyperAIStudio.HyperAIStudioBatchQueryToolset (petit, pour chercher une lecture en lot) |
un seul outil hyper_batch_query (contexte, scène, recherche projet, index) ; non utilisable pour les nœuds de graphe |
| 14 | BlueprintTools.list_graphs |
{blueprint:/Game/BPs/Person.Person} |
130 graphes (relevé : liste de 130 refPath, UserConstructionScript + fonctions + EventGraph) |
| 15 | BlueprintTools.find_nodes |
{graph:Person:EventGraph, title:"Tick"} |
9 refPath dont K2Node_Event_0 |
| 16 | BlueprintTools.get_node_infos |
{nodes:[Person:EventGraph.K2Node_Event_0]} |
type_id Ajouterunévénement|ÉvénementTick, broche then reliée à K2Node_CallFunction_807 |
| 17 | BlueprintTools.get_connected_subgraph |
{} |
erreur de schéma (node) |
| 18 | BlueprintTools.get_connected_subgraph |
{node:Person:EventGraph.K2Node_Event_0} |
211 924 caractères, enregistré (voir ci-dessous) |
Nombre de graphes de Person : 130 (appel 14, comptage manuel de la liste, estimé).
Sortie de l'appel 18 : copiée dans D:\Game\LifePlay-master 5.8\Saved\OPT0-A2\Person_EventGraph_Tick_subgraph.json ; résumée par D:\Game\LifePlay-master 5.8\Saved\OPT0-A2\resume_subgraph.py (python -I resume_subgraph.py Person_EventGraph_Tick_subgraph.json). Sortie du script, collée :
type racine: list
nombre de noeuds: 180
graphes touches:
180 /Game/BPs/Person.Person:EventGraph
type_id correspondant aux motifs:
2 Acteur|Tick|SetActorTickEnabled
1 Ajouterun?v?nement|?v?nementTick
types distincts: 62
(Les ? sont l'encodage console de la sortie du script, non du fichier.) Les motifs cherchés par le script : Delay, Retard, GetAllActorsOfClass, TousLesActeurs, LPStringCompat, LPMeshCompat, LPNavigationHelpers, Tick ; seuls les deux types Tick ci-dessus sont apparus.
3. Nœuds dépréciés
Non mesuré. Aucun nœud n'a été classé comme déprécié : l'API lue (find_nodes, get_node_infos) renvoie le type_id localisé, sans indicateur « obsolète » vu dans les sorties obtenues. Compilation : sans objet : pas de compilation en lecture seule.
4. Appelants U9 (LPStringCompat, LPMeshCompat, LPNavigationHelpers)
| Correctif | Blueprint | Graphe | Nombre de nœuds |
|---|---|---|---|
LPStringCompat |
non mesuré | — | — |
LPMeshCompat |
non mesuré | — | — |
LPNavigationHelpers |
non mesuré | — | — |
Comparaison à OBA-T5-EVAL (56 / 6) : impossible. Les 56 et 6 ne sont ni confirmés ni infirmés.
Seule observation : dans le sous-graphe connecté au tick de Person (180 nœuds, § 2 appel 18), aucun type ne contient ces trois noms.
5. Event Tick par classe
| Blueprint | Graphe | Nœud | Preuve |
|---|---|---|---|
/Game/BPs/Person |
EventGraph |
K2Node_Event_0 (type ÉvénementTick, broche DeltaSeconds) |
appels 15 et 16 |
- Total établi : 1 Blueprint avec Event Tick, sur 3 lus (
CameraShake:EventGraphvide, 0 nœud, appel 12 ;Person). - Les 107 autres Blueprints n'ont pas été lus (§ 7). Le total sur 110 est inconnu.
6. Delay et Get All Actors Of Class atteints depuis un tick
| Blueprint | Nœud | Atteint depuis un tick |
|---|---|---|
/Game/BPs/Person (EventGraph, sous-graphe du tick, 180 nœuds) |
aucun nœud Delay ni Get All Actors Of Class dans ce sous-graphe |
sans objet : 0 nœud |
Limite connue : get_connected_subgraph suit les broches du seul graphe. L'appel à une fonction (K2Node_CallFunction_807 et suivants) n'est pas suivi dans le graphe de cette fonction. La conclusion « atteint depuis un tick » n'est donc pas établie pour les 130 graphes de Person, ni pour les autres Blueprints.
Le relevé des nœuds Delay / Get All Actors Of Class sur les autres Blueprints n'a pas été fait.
7. Écarts avec la fiche et arrêt
- Arrêt au budget de méthode, pas au budget de tours : la fiche demande
get_graphpuisfind_nodes« par Blueprint ». Mesure :Personseul a 130 graphes ; 110 Blueprints donnent plusieurs centaines de graphes, donc plusieurs centaines d'appelsfind_nodes(un par graphe, un seul appel à la fois, un appel par tour) pour chaque motif. Cela ne tient pas dans le budget de 30 tours.ProgrammaticToolset(lot d'appels) est interdit à ce rôle. Décision laissée à l'orchestratrice (variante de la fiche : script Python d'éditeurlp-commandlets, ou lot d'appels autorisé, ou périmètre réduit à une liste de Blueprints). find_nodesexige ungraphet untitle; il ne renvoie que des refPath, unget_node_infosest nécessaire pour classer chaque nœud (type localisé en français :Ajouterunévénement|ÉvénementTick). Les titres sont donc à chercher en français (Retardpour Delay, probable ; non testé).get_graphne renvoie que le refPath du graphe (pas de nœuds).list_graphs {blueprint}donne la liste des graphes : outil à utiliser pour la suite.describe_toolset: 1 appel sur un petit jeu d'outils (HyperAIStudioBatchQueryToolset), pas de description complète deBlueprintTools; le nomlist_graphsa été trouvé par essai de schéma.hyper_blueprint_debug_inspectetread_graph_dsl: non essayés.- La liste de 110 Blueprints n'est pas enregistrée en fichier (sortie courte) : à relancer (appel 3) pour la recopier.
- Nombres de § 1 et § 2 marqués « estimé » : comptés à la main, à recompter par script.
État de reprise : Établi — l'énumération (appel 3), list_graphs par Blueprint, find_nodes {graph, title}, get_node_infos, get_connected_subgraph {node} fonctionnent en lecture. Reste — tout le § 3 à 6 sur 107 Blueprints. Prochaine commande — list_graphs puis find_nodes (titre Tick, Retard, Delay, Get All Actors Of Class, fonctions des trois bibliothèques) sur les Blueprints retenus par l'orchestratrice.
8. Journal de l'éditeur, UeState, git
- Éditeur : non fermé par cet agent (l'orchestratrice le ferme, puis
BUILD-FIN). Journal :D:\Game\LifePlay-master 5.8\Saved\OPT0-A2\OPT0-A2.log, non lu. Tools\UeState.ps1après arrêt : non relevé (éditeur encore ouvert).git status --short -- Content: non relevé par cet agent.
9. Fin
Aucun verdict. Fichiers écrits : D:\Game\LifePlay-master 5.8\Saved\OPT0-A2\resume_subgraph.py, D:\Game\LifePlay-master 5.8\Saved\OPT0-A2\Person_EventGraph_Tick_subgraph.json (copie de la sortie MCP), ce livrable. PubCheck : non lancé (agent sans exécution de ce script prévu).
Fin : [OPT0-A2→BOSS] OPT0-A2 FIN-FICHE (partiel) D:\Game\LifePlay-master 5.8\Docs\Migration\etat\OPT\OPT0\OPT0-A2-INV.md