Finalize generated-mode execution readiness slice
This commit is contained in:
parent
4d50ffaba4
commit
508bac7fac
15 changed files with 579 additions and 225 deletions
31
.idea/.idea.HyperTwist.dir/.idea/betterCommentsSettings.xml
generated
Normal file
31
.idea/.idea.HyperTwist.dir/.idea/betterCommentsSettings.xml
generated
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="BetterCommentsSettings">
|
||||
<option name="initialized" value="true" />
|
||||
<option name="tags">
|
||||
<list>
|
||||
<CustomTag>
|
||||
<option name="color" value="#FF2D00" />
|
||||
<option name="type" value="!" />
|
||||
</CustomTag>
|
||||
<CustomTag>
|
||||
<option name="color" value="#3498DB" />
|
||||
<option name="type" value="?" />
|
||||
</CustomTag>
|
||||
<CustomTag>
|
||||
<option name="color" value="#474747" />
|
||||
<option name="hasStrikethrough" value="true" />
|
||||
<option name="type" value="//" />
|
||||
</CustomTag>
|
||||
<CustomTag>
|
||||
<option name="color" value="#FF8C00" />
|
||||
<option name="type" value="todo" />
|
||||
</CustomTag>
|
||||
<CustomTag>
|
||||
<option name="color" value="#98C379" />
|
||||
<option name="type" value="*" />
|
||||
</CustomTag>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
||||
8
.idea/.idea.HyperTwist.dir/.idea/indexLayout.xml
generated
Normal file
8
.idea/.idea.HyperTwist.dir/.idea/indexLayout.xml
generated
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="UserContentModel">
|
||||
<attachedFolders />
|
||||
<explicitIncludes />
|
||||
<explicitExcludes />
|
||||
</component>
|
||||
</project>
|
||||
8
.idea/.idea.HyperTwist.dir/.idea/projectSettingsUpdater.xml
generated
Normal file
8
.idea/.idea.HyperTwist.dir/.idea/projectSettingsUpdater.xml
generated
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="RiderProjectSettingsUpdater">
|
||||
<option name="singleClickDiffPreview" value="1" />
|
||||
<option name="unhandledExceptionsIgnoreList" value="1" />
|
||||
<option name="vcsConfiguration" value="3" />
|
||||
</component>
|
||||
</project>
|
||||
6
.idea/.idea.HyperTwist.dir/.idea/vcs.xml
generated
Normal file
6
.idea/.idea.HyperTwist.dir/.idea/vcs.xml
generated
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
||||
107
.idea/.idea.HyperTwist.dir/.idea/workspace.xml
generated
Normal file
107
.idea/.idea.HyperTwist.dir/.idea/workspace.xml
generated
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="AutoGeneratedRunConfigurationManager">
|
||||
<projectFile>HyperTwist.vcxproj</projectFile>
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="b04d83de-f469-451c-8dfc-ff32cd600411" name="Changes" comment="">
|
||||
<change beforePath="$PROJECT_DIR$/UnrealHyperTwist/Source/UnrealHyperTwist/UnrealHyperTwist.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/UnrealHyperTwist/Source/UnrealHyperTwist/UnrealHyperTwist.cpp" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/UnrealHyperTwist/Source/UnrealHyperTwist/UnrealHyperTwist.h" beforeDir="false" afterPath="$PROJECT_DIR$/UnrealHyperTwist/Source/UnrealHyperTwist/UnrealHyperTwist.h" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/docs/Deepseek C# Prompt" beforeDir="false" />
|
||||
</list>
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="Git.Settings">
|
||||
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
||||
</component>
|
||||
<component name="KubernetesApiPersistence"><![CDATA[{}]]></component>
|
||||
<component name="KubernetesApiProvider"><![CDATA[{
|
||||
"isMigrated": true
|
||||
}]]></component>
|
||||
<component name="McpProjectServerCommands">
|
||||
<commands />
|
||||
<urls />
|
||||
</component>
|
||||
<component name="ProjectColorInfo"><![CDATA[{
|
||||
"associatedIndex": 4
|
||||
}]]></component>
|
||||
<component name="ProjectId" id="3DGZgISbBeExOyD9BNTyyHp7Vpo" />
|
||||
<component name="ProjectViewState">
|
||||
<option name="hideEmptyMiddlePackages" value="true" />
|
||||
<option name="showLibraryContents" value="true" />
|
||||
</component>
|
||||
<component name="PropertiesComponent"><![CDATA[{
|
||||
"keyToString": {
|
||||
"ModuleVcsDetector.initialDetectionPerformed": "true",
|
||||
"RunOnceActivity.MCP Project settings loaded": "true",
|
||||
"RunOnceActivity.ShowReadmeOnStart": "true",
|
||||
"RunOnceActivity.typescript.service.memoryLimit.init": "true",
|
||||
"nodejs_package_manager_path": "npm",
|
||||
"vue.rearranger.settings.migration": "true"
|
||||
},
|
||||
"keyToStringList": {
|
||||
"stardust.markdown.MarkdownSplitEditorSuppressor:keyList": []
|
||||
}
|
||||
}]]></component>
|
||||
<component name="RunManager">
|
||||
<configuration name="HyperTwist" type="CppProject" factoryName="C++ Project">
|
||||
<configuration_1 setup="1">
|
||||
<option name="CONFIGURATION" value="Debug" />
|
||||
<option name="PLATFORM" value="Win32" />
|
||||
<option name="CURRENT_LAUNCH_PROFILE" value="Local" />
|
||||
<option name="EXE_PATH" value="$(LocalDebuggerCommand)" />
|
||||
<option name="PROGRAM_PARAMETERS" value="$(LocalDebuggerCommandArguments)" />
|
||||
<option name="WORKING_DIRECTORY" value="$(LocalDebuggerWorkingDirectory)" />
|
||||
<option name="PASS_PARENT_ENVS" value="1" />
|
||||
<option name="USE_EXTERNAL_CONSOLE" value="0" />
|
||||
<option name="TERMINAL_INTERACTION_BEHAVIOR" value="AUTO_DETECT" />
|
||||
<option name="PROJECT_FILE_PATH" value="$PROJECT_DIR$/HyperTwist.vcxproj" />
|
||||
</configuration_1>
|
||||
<option name="DEFAULT_PROJECT_PATH" value="$PROJECT_DIR$/HyperTwist.vcxproj" />
|
||||
<option name="PROJECT_FILE_PATH" value="$PROJECT_DIR$/HyperTwist.vcxproj" />
|
||||
<option name="AUTO_SELECT_PRIORITY" value="0" />
|
||||
<method v="2">
|
||||
<option name="Build" />
|
||||
</method>
|
||||
</configuration>
|
||||
</component>
|
||||
<component name="TaskManager">
|
||||
<task active="true" id="Default" summary="Default task">
|
||||
<changelist id="b04d83de-f469-451c-8dfc-ff32cd600411" name="Changes" comment="" />
|
||||
<created>1777910478151</created>
|
||||
<option name="number" value="Default" />
|
||||
<option name="presentableId" value="Default" />
|
||||
<updated>1777910478151</updated>
|
||||
<workItem from="1777910480889" duration="4000" />
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
<option name="version" value="3" />
|
||||
</component>
|
||||
<component name="UnityProjectConfiguration" hasMinimizedUI="false" />
|
||||
<component name="VcsManagerConfiguration">
|
||||
<option name="CLEAR_INITIAL_COMMIT_MESSAGE" value="true" />
|
||||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<breakpoint-manager>
|
||||
<breakpoints>
|
||||
<breakpoint enabled="true" type="DotNet_Exception_Breakpoints">
|
||||
<properties exception="System.OperationCanceledException" breakIfHandledByOtherCode="false" displayValue="System.OperationCanceledException" />
|
||||
<option name="timeStamp" value="1" />
|
||||
</breakpoint>
|
||||
<breakpoint enabled="true" type="DotNet_Exception_Breakpoints">
|
||||
<properties exception="System.Threading.Tasks.TaskCanceledException" breakIfHandledByOtherCode="false" displayValue="System.Threading.Tasks.TaskCanceledException" />
|
||||
<option name="timeStamp" value="2" />
|
||||
</breakpoint>
|
||||
<breakpoint enabled="true" type="DotNet_Exception_Breakpoints">
|
||||
<properties exception="System.Threading.ThreadAbortException" breakIfHandledByOtherCode="false" displayValue="System.Threading.ThreadAbortException" />
|
||||
<option name="timeStamp" value="3" />
|
||||
</breakpoint>
|
||||
</breakpoints>
|
||||
</breakpoint-manager>
|
||||
</component>
|
||||
</project>
|
||||
15
.idea/.idea.HyperTwist/.idea/.gitignore
generated
vendored
Normal file
15
.idea/.idea.HyperTwist/.idea/.gitignore
generated
vendored
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
# Default ignored files
|
||||
/shelf/
|
||||
/workspace.xml
|
||||
# Rider ignored files
|
||||
/projectSettingsUpdater.xml
|
||||
/.idea.HyperTwist.iml
|
||||
/contentModel.xml
|
||||
/modules.xml
|
||||
# Ignored default folder with query files
|
||||
/queries/
|
||||
# Datasource local storage ignored files
|
||||
/dataSources/
|
||||
/dataSources.local.xml
|
||||
# Editor-based HTTP Client requests
|
||||
/httpRequests/
|
||||
31
.idea/.idea.HyperTwist/.idea/betterCommentsSettings.xml
generated
Normal file
31
.idea/.idea.HyperTwist/.idea/betterCommentsSettings.xml
generated
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="BetterCommentsSettings">
|
||||
<option name="initialized" value="true" />
|
||||
<option name="tags">
|
||||
<list>
|
||||
<CustomTag>
|
||||
<option name="color" value="#FF2D00" />
|
||||
<option name="type" value="!" />
|
||||
</CustomTag>
|
||||
<CustomTag>
|
||||
<option name="color" value="#3498DB" />
|
||||
<option name="type" value="?" />
|
||||
</CustomTag>
|
||||
<CustomTag>
|
||||
<option name="color" value="#474747" />
|
||||
<option name="hasStrikethrough" value="true" />
|
||||
<option name="type" value="//" />
|
||||
</CustomTag>
|
||||
<CustomTag>
|
||||
<option name="color" value="#FF8C00" />
|
||||
<option name="type" value="todo" />
|
||||
</CustomTag>
|
||||
<CustomTag>
|
||||
<option name="color" value="#98C379" />
|
||||
<option name="type" value="*" />
|
||||
</CustomTag>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
||||
12
.idea/.idea.HyperTwist/.idea/indexLayout.xml
generated
Normal file
12
.idea/.idea.HyperTwist/.idea/indexLayout.xml
generated
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="UserContentModel">
|
||||
<attachedFolders>
|
||||
<Path>.</Path>
|
||||
<Path>../Workspaces</Path>
|
||||
<Path>../visual_studio_solutions/multi_project</Path>
|
||||
</attachedFolders>
|
||||
<explicitIncludes />
|
||||
<explicitExcludes />
|
||||
</component>
|
||||
</project>
|
||||
121
.idea/.idea.HyperTwist/.idea/vcs.xml
generated
Normal file
121
.idea/.idea.HyperTwist/.idea/vcs.xml
generated
Normal file
|
|
@ -0,0 +1,121 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/mirrors/GitNexus" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/HactarCE/2x2x2x2-Scrambler" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/baidu/san" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/mrdoob/three.js" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/pmndrs/drei" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/pmndrs/leva" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/pmndrs/maath" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/pmndrs/postprocessing" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/pmndrs/react-postprocessing" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/pmndrs/react-spring" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/pmndrs/react-three-fiber" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/pmndrs/three-stdlib" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/pmndrs/uikit" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/pmndrs/use-gesture" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/pmndrs/xr" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/cache/repo-intake/pmndrs/zustand" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/Aarav2709/KubeTimr" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/HactarCE/Hyperspeedcube" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/Hypercubers/hypercubing.xyz" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/KhronosGroup/glTF-Sample-Viewer" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/KhronosGroup/glTF-Sample-Viewer/glTF-Sample-Renderer" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/Lykos/cube_trainer" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/NuiLab/code-vr" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/SYSTRAN/faster-whisper" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/abunickabhi/5style-Trainer" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/apache/echarts" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/brianpeiris/RiftSketch" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/cahidenes/rubiks-cube-solver" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/coqui-ai/TTS" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/cubing/cubing.js" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/cutelyaware/magiccube4d" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/ecomfe/echarts-gl" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/ecomfe/zrender" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/ggml-org/whisper.cpp" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/google/model-viewer" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/kkoomen/qbr" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/met4citizen/TalkingHead" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/mrdoob/three.js" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/newyork-anthonyng/rubiks-cross-trainer" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/pissang/clay-viewer" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/pissang/claygl" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/pmndrs/drei" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/pmndrs/leva" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/pmndrs/maath" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/pmndrs/postprocessing" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/pmndrs/react-postprocessing" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/pmndrs/react-spring" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/pmndrs/react-three-fiber" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/pmndrs/three-stdlib" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/pmndrs/uikit" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/pmndrs/use-gesture" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/pmndrs/xr" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/pmndrs/zustand" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/poliva/cubedex" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/rhasspy/piper" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/roice3/Magic120Cell" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/roice3/MagicCube5D" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/roice3/MagicTile" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/ManimExtras" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/ManimML" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/ManimPango" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/Manim_CAD_Drawing_utils" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-Astronomy" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-Chemistry" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-algorithm" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-automata" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-circuit" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-data-structures" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-dsa" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-eng" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-fontawesome" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-fonts" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-meshes" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-mobject-svg" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-neural-network" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-onlinetex" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-pptx" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-revealjs" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-sequence-diagram" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-slides" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-speech" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim-studio" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/scriptoriumadmin/manim_editor" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/tao-yu/Alg-Trainer" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/tentone/rubix-solver" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/vivaansinghvi07/rubix-cube-solver" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/permissive/yakupbilen/drl-rubiks-cube" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/AviKaufman/Rubix-cube-trainer" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/HactarCE/2x2x2x2-Scrambler" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/MathewKJ2048/Rubiks-cube-simulator" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/PostHog/posthog" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/ShellPuppy/RCube" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/aMonteSl/CodeXR" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/alinen/cube" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/ambisinister/blindsolve" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/brownan/Rubiks-Cube-Solver" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/cs0x7f/cstimer" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/cubing/alg.js" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/cubing/twisty.js" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/efrantar/rob-twophase" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/kash/cubedesk" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/onionhoney/roux-trainers" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/remotion-dev/remotion" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/screenpipe/screenpipe" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/HyperTwist/mirrors/restrictive/vwcwong/CubeSim" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/ScriptoriumAI" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/VectorShell" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/VectorShell/mirrors/restrictive/abhigyanpatwari/GitNexus" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/VectorShell/mirrors/restrictive/abhigyanpatwari/GitNexus_upstream_pristine" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../Workspaces/VectorShell/mirrors/restrictive/abhigyanpatwari/GitNexus_working_reference" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../visual_studio_solutions/multi_project" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../visual_studio_solutions/multi_project/GPT 5.4 HyperTwist parse" vcs="Git" />
|
||||
<mapping directory="$PROJECT_DIR$/../visual_studio_solutions/multi_project/GPT 5.4 VectorShell parse" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
||||
|
|
@ -3682,12 +3682,13 @@ bool UHyperTwistCoachDashboardWidget::ContinueCurrentRunFlow()
|
|||
if (bSucceeded)
|
||||
{
|
||||
LastStepResult = FHyperTwistTrainingRunStepResult();
|
||||
RefreshTrainingState();
|
||||
SyncRetainedRunRecap();
|
||||
SyncSelectedQueueEntry();
|
||||
SyncSelectedAttempt();
|
||||
UpdateDashboardPresentation();
|
||||
}
|
||||
|
||||
RefreshTrainingState();
|
||||
SyncRetainedRunRecap();
|
||||
SyncSelectedQueueEntry();
|
||||
SyncSelectedAttempt();
|
||||
UpdateDashboardPresentation();
|
||||
}
|
||||
else if (CachedRunState.Session.IsStructurallyValid() && CachedRunState.CurrentSelection.TrainingCase.IsStructurallyValid())
|
||||
{
|
||||
|
|
@ -10246,19 +10247,9 @@ void UHyperTwistCoachDashboardWidget::UpdateDashboardPresentation()
|
|||
&& LastStepResult.AttemptResolution.NextCaseSelection.IsStructurallyValid();
|
||||
const bool bGeneratedModeLaunchDeck =
|
||||
HyperTwistCoachDashboardWidgetInternal::IsGeneratedModeLaunchDeck(CachedRunState);
|
||||
const bool bCanExecuteGeneratedModeLaunch = [this, bGeneratedModeLaunchDeck]()
|
||||
{
|
||||
if (!bGeneratedModeLaunchDeck)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
FHyperTwistTrainingImportedGeneratedModeLaunchConfig ActiveGeneratedModeLaunchConfig;
|
||||
return UHyperTwistTrainingRuntimeLibrary::TryGetActiveImportedGeneratedModeLaunchConfig(
|
||||
this,
|
||||
ActiveGeneratedModeLaunchConfig
|
||||
);
|
||||
}();
|
||||
const bool bCanExecuteGeneratedModeLaunch =
|
||||
bGeneratedModeLaunchDeck
|
||||
&& CachedCoachPanelState.bCanExecuteActiveGeneratedModeLaunchRequest;
|
||||
const bool bCanContinueCurrentRun = !bHasLiveAttemptTimer
|
||||
&& bHasRunnableCurrentCase
|
||||
&& !bLastStepCompletedRun
|
||||
|
|
@ -10308,8 +10299,12 @@ void UHyperTwistCoachDashboardWidget::UpdateDashboardPresentation()
|
|||
}
|
||||
else if (bGeneratedModeLaunchDeck && !bCanExecuteGeneratedModeLaunch)
|
||||
{
|
||||
TransitionStatusLine =
|
||||
TEXT("Transition: generated-mode selectors are still incomplete. Finish the active selector choices before executing the owned generated run.");
|
||||
TransitionStatusLine = CachedCoachPanelState.ActiveGeneratedModeExecutionBlockedReason.IsEmpty()
|
||||
? TEXT("Transition: generated-mode selectors are still incomplete. Finish the active selector choices before executing the owned generated run.")
|
||||
: FString::Printf(
|
||||
TEXT("Transition: %s"),
|
||||
*CachedCoachPanelState.ActiveGeneratedModeExecutionBlockedReason
|
||||
);
|
||||
}
|
||||
else if (bCanContinueCurrentRun)
|
||||
{
|
||||
|
|
@ -10320,8 +10315,11 @@ void UHyperTwistCoachDashboardWidget::UpdateDashboardPresentation()
|
|||
if (bGeneratedModeLaunchDeck)
|
||||
{
|
||||
TransitionStatusLine = FString::Printf(
|
||||
TEXT("Transition: generated-mode request is staged on %s. Execute the owned generated run when ready."),
|
||||
*TransitionPrompt
|
||||
TEXT("Transition: generated-mode request is staged on %s. Execute the owned generated run%s."),
|
||||
*TransitionPrompt,
|
||||
CachedCoachPanelState.bActiveGeneratedModeExecutionWillRefreshLaunchRequest
|
||||
? TEXT("; the stored request will refresh on execute")
|
||||
: TEXT(" when ready")
|
||||
);
|
||||
}
|
||||
else if (bHasNextCaseFromLastStep)
|
||||
|
|
@ -15661,8 +15659,21 @@ void UHyperTwistCoachDashboardWidget::UpdateDashboardPresentation()
|
|||
: *CachedCoachPanelState.LatestGeneratedModeSelectorSummaryLine
|
||||
)
|
||||
: TEXT("\nGenerated request: none for active deck");
|
||||
const FString GeneratedExecutionDetail =
|
||||
CachedCoachPanelState.bHasActiveGeneratedModeExecutionTarget
|
||||
? FString::Printf(
|
||||
TEXT("\nGenerated execution ready: %s | Request refresh on execute: %s | Blocked: %s"),
|
||||
CachedCoachPanelState.bCanExecuteActiveGeneratedModeLaunchRequest ? TEXT("yes") : TEXT("no"),
|
||||
CachedCoachPanelState.bActiveGeneratedModeExecutionWillRefreshLaunchRequest
|
||||
? TEXT("yes")
|
||||
: TEXT("no"),
|
||||
CachedCoachPanelState.ActiveGeneratedModeExecutionBlockedReason.IsEmpty()
|
||||
? TEXT("none")
|
||||
: *CachedCoachPanelState.ActiveGeneratedModeExecutionBlockedReason
|
||||
)
|
||||
: TEXT("");
|
||||
VerificationDetailTextBlock->SetText(FText::FromString(FString::Printf(
|
||||
TEXT("Path: %s\nRound-trip pass: %s | Save: %s | Load: %s | Count parity: %s | State parity: %s | Integrity parity: %s\nRuns %d/%d | Learners %d/%d | Reviews %d/%d | Plans %d/%d | Queues %d/%d | History %d/%d | Notes: %s%s"),
|
||||
TEXT("Path: %s\nRound-trip pass: %s | Save: %s | Load: %s | Count parity: %s | State parity: %s | Integrity parity: %s\nRuns %d/%d | Learners %d/%d | Reviews %d/%d | Plans %d/%d | Queues %d/%d | History %d/%d | Notes: %s%s%s"),
|
||||
CachedRepositoryRoundTripVerification.ResolvedPath.IsEmpty()
|
||||
? TEXT("not yet verified")
|
||||
: *CachedRepositoryRoundTripVerification.ResolvedPath,
|
||||
|
|
@ -15685,7 +15696,8 @@ void UHyperTwistCoachDashboardWidget::UpdateDashboardPresentation()
|
|||
CachedRepositoryRoundTripVerification.LoadedCoachSessionQueueHistoryCount,
|
||||
CachedRepositoryRoundTripVerification.ExpectedCoachSessionQueueHistoryCount,
|
||||
*VerificationNotePreview,
|
||||
*GeneratedLaunchRequestDetail
|
||||
*GeneratedLaunchRequestDetail,
|
||||
*GeneratedExecutionDetail
|
||||
)));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -254,6 +254,139 @@ namespace HyperTwistTrainingSubsystemInternal
|
|||
);
|
||||
}
|
||||
|
||||
bool DoGeneratedModeSelectorChoiceSetsMatch(
|
||||
const TArray<FHyperTwistTrainingImportedRuntimeSelector>& Selectors,
|
||||
const TArray<FHyperTwistTrainingImportedRuntimeSelectorChoice>& LeftChoices,
|
||||
const TArray<FHyperTwistTrainingImportedRuntimeSelectorChoice>& RightChoices
|
||||
)
|
||||
{
|
||||
for (const FHyperTwistTrainingImportedRuntimeSelector& Selector : Selectors)
|
||||
{
|
||||
const FHyperTwistTrainingImportedRuntimeSelectorChoice* LeftChoice =
|
||||
LeftChoices.FindByPredicate(
|
||||
[&Selector](const FHyperTwistTrainingImportedRuntimeSelectorChoice& Candidate)
|
||||
{
|
||||
return Candidate.SelectorId == Selector.SelectorId && Candidate.IsStructurallyValid();
|
||||
}
|
||||
);
|
||||
const FHyperTwistTrainingImportedRuntimeSelectorChoice* RightChoice =
|
||||
RightChoices.FindByPredicate(
|
||||
[&Selector](const FHyperTwistTrainingImportedRuntimeSelectorChoice& Candidate)
|
||||
{
|
||||
return Candidate.SelectorId == Selector.SelectorId && Candidate.IsStructurallyValid();
|
||||
}
|
||||
);
|
||||
if (LeftChoice == nullptr || RightChoice == nullptr)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
if (LeftChoice->SelectedValue != RightChoice->SelectedValue)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool DoesGeneratedModeLaunchRequestMatchLaunchConfig(
|
||||
const FHyperTwistTrainingImportedGeneratedModeLaunchRequest& LaunchRequest,
|
||||
const FHyperTwistTrainingImportedRuntimeSurface& RuntimeSurface,
|
||||
const FHyperTwistTrainingImportedGeneratedModeLaunchConfig& ExpectedLaunchConfig
|
||||
)
|
||||
{
|
||||
return LaunchRequest.IsStructurallyValid()
|
||||
&& LaunchRequest.LaunchConfig.DeckId == ExpectedLaunchConfig.DeckId
|
||||
&& LaunchRequest.LaunchConfig.SurfaceId == ExpectedLaunchConfig.SurfaceId
|
||||
&& LaunchRequest.LaunchConfig.RuntimeModeId.Equals(
|
||||
ExpectedLaunchConfig.RuntimeModeId,
|
||||
ESearchCase::IgnoreCase
|
||||
)
|
||||
&& DoGeneratedModeSelectorChoiceSetsMatch(
|
||||
RuntimeSurface.Selectors,
|
||||
LaunchRequest.LaunchConfig.SelectorChoices,
|
||||
ExpectedLaunchConfig.SelectorChoices
|
||||
);
|
||||
}
|
||||
|
||||
bool TryResolveGeneratedModeExecutionLaunchConfig(
|
||||
const FHyperTwistTrainingRunState& RunState,
|
||||
const FHyperTwistTrainingImportedGeneratedModeLaunchRequest& ExistingLaunchRequest,
|
||||
FHyperTwistTrainingImportedGeneratedModeLaunchConfig& OutLaunchConfig,
|
||||
bool& bOutRequiresLaunchRequestRefresh,
|
||||
FString& OutBlockedReason
|
||||
)
|
||||
{
|
||||
OutLaunchConfig = FHyperTwistTrainingImportedGeneratedModeLaunchConfig();
|
||||
bOutRequiresLaunchRequestRefresh = false;
|
||||
OutBlockedReason.Reset();
|
||||
|
||||
if (!RunState.IsStructurallyValid())
|
||||
{
|
||||
OutBlockedReason = TEXT("Generated-mode execution requires an active training run.");
|
||||
return false;
|
||||
}
|
||||
|
||||
FHyperTwistTrainingImportedRuntimeSurface RuntimeSurface;
|
||||
if (!UHyperTwistTrainingCatalogLibrary::TryGetImportedRuntimeSurfaceFromDeck(
|
||||
RunState.ActiveDeck,
|
||||
RuntimeSurface)
|
||||
|| !RuntimeSurface.IsStructurallyValid()
|
||||
|| !RuntimeSurface.SurfaceKind.Equals(TEXT("generated-mode"), ESearchCase::IgnoreCase))
|
||||
{
|
||||
OutBlockedReason = TEXT("Active run is not a generated-mode imported runtime surface.");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!RunState.ImportedRuntimeSelectionState.IsStructurallyValid()
|
||||
|| RunState.ImportedRuntimeSelectionState.SurfaceId != RuntimeSurface.SurfaceId
|
||||
|| !RunState.ImportedRuntimeSelectionState.SurfaceKind.Equals(
|
||||
RuntimeSurface.SurfaceKind,
|
||||
ESearchCase::IgnoreCase))
|
||||
{
|
||||
OutBlockedReason =
|
||||
TEXT("Generated-mode execution requires imported selector state that matches the active runtime surface.");
|
||||
return false;
|
||||
}
|
||||
|
||||
for (const FHyperTwistTrainingImportedRuntimeSelector& Selector : RuntimeSurface.Selectors)
|
||||
{
|
||||
const FHyperTwistTrainingImportedRuntimeSelectorChoice* ActiveChoice =
|
||||
RunState.ImportedRuntimeSelectionState.SelectorChoices.FindByPredicate(
|
||||
[&Selector](const FHyperTwistTrainingImportedRuntimeSelectorChoice& Candidate)
|
||||
{
|
||||
return Candidate.SelectorId == Selector.SelectorId && Candidate.IsStructurallyValid();
|
||||
}
|
||||
);
|
||||
if (ActiveChoice == nullptr)
|
||||
{
|
||||
OutBlockedReason = FString::Printf(
|
||||
TEXT("Generated-mode execution is blocked because selector %s is unresolved."),
|
||||
*Selector.Label
|
||||
);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (!UHyperTwistTrainingCatalogLibrary::TryBuildImportedGeneratedModeLaunchConfig(
|
||||
RunState.ActiveDeck,
|
||||
RunState.ImportedRuntimeSelectionState,
|
||||
RunState.Session,
|
||||
OutLaunchConfig))
|
||||
{
|
||||
OutBlockedReason =
|
||||
TEXT("Generated-mode execution could not derive a structurally valid launch request from the active selector state.");
|
||||
return false;
|
||||
}
|
||||
|
||||
bOutRequiresLaunchRequestRefresh = !DoesGeneratedModeLaunchRequestMatchLaunchConfig(
|
||||
ExistingLaunchRequest,
|
||||
RuntimeSurface,
|
||||
OutLaunchConfig
|
||||
);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool TryBuildGeneratedModeExecutionDeck(
|
||||
const FHyperTwistTrainingDeck& SourceDeck,
|
||||
const FHyperTwistTrainingImportedGeneratedModeLaunchRequest& LaunchRequest,
|
||||
|
|
@ -1131,75 +1264,24 @@ bool UHyperTwistTrainingSubsystem::TryExecuteActiveImportedGeneratedModeLaunchRe
|
|||
OutRunState = FHyperTwistTrainingRunState();
|
||||
OutBlockedReason.Reset();
|
||||
|
||||
if (!HasActiveRun() || !ActiveRunState.IsStructurallyValid())
|
||||
if (!HasActiveRun())
|
||||
{
|
||||
OutBlockedReason = TEXT("Generated-mode execution requires an active training run.");
|
||||
return false;
|
||||
}
|
||||
|
||||
FHyperTwistTrainingImportedRuntimeSurface RuntimeSurface;
|
||||
if (!UHyperTwistTrainingCatalogLibrary::TryGetImportedRuntimeSurfaceFromDeck(
|
||||
ActiveRunState.ActiveDeck,
|
||||
RuntimeSurface)
|
||||
|| !RuntimeSurface.IsStructurallyValid()
|
||||
|| !RuntimeSurface.SurfaceKind.Equals(TEXT("generated-mode"), ESearchCase::IgnoreCase))
|
||||
{
|
||||
OutBlockedReason = TEXT("Active run is not a generated-mode imported runtime surface.");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!ActiveRunState.ImportedRuntimeSelectionState.IsStructurallyValid()
|
||||
|| ActiveRunState.ImportedRuntimeSelectionState.SurfaceId != RuntimeSurface.SurfaceId
|
||||
|| !ActiveRunState.ImportedRuntimeSelectionState.SurfaceKind.Equals(
|
||||
RuntimeSurface.SurfaceKind,
|
||||
ESearchCase::IgnoreCase))
|
||||
{
|
||||
OutBlockedReason = TEXT("Generated-mode execution requires imported selector state that matches the active runtime surface.");
|
||||
return false;
|
||||
}
|
||||
|
||||
FHyperTwistTrainingImportedGeneratedModeLaunchConfig ExpectedLaunchConfig;
|
||||
FHyperTwistTrainingImportedGeneratedModeLaunchRequest LaunchRequest =
|
||||
ActiveImportedGeneratedModeLaunchRequest;
|
||||
bool bNeedsFreshLaunchRequest = !LaunchRequest.IsStructurallyValid();
|
||||
if (!bNeedsFreshLaunchRequest
|
||||
&& (LaunchRequest.LaunchConfig.DeckId != ActiveRunState.ActiveDeck.DeckId
|
||||
|| LaunchRequest.LaunchConfig.SurfaceId != RuntimeSurface.SurfaceId
|
||||
|| !LaunchRequest.LaunchConfig.RuntimeModeId.Equals(
|
||||
RuntimeSurface.RuntimeModeId,
|
||||
ESearchCase::IgnoreCase)))
|
||||
bool bNeedsFreshLaunchRequest = false;
|
||||
if (!HyperTwistTrainingSubsystemInternal::TryResolveGeneratedModeExecutionLaunchConfig(
|
||||
ActiveRunState,
|
||||
LaunchRequest,
|
||||
ExpectedLaunchConfig,
|
||||
bNeedsFreshLaunchRequest,
|
||||
OutBlockedReason))
|
||||
{
|
||||
bNeedsFreshLaunchRequest = true;
|
||||
}
|
||||
|
||||
for (const FHyperTwistTrainingImportedRuntimeSelector& Selector : RuntimeSurface.Selectors)
|
||||
{
|
||||
const FHyperTwistTrainingImportedRuntimeSelectorChoice* ActiveChoice =
|
||||
ActiveRunState.ImportedRuntimeSelectionState.SelectorChoices.FindByPredicate(
|
||||
[&Selector](const FHyperTwistTrainingImportedRuntimeSelectorChoice& Candidate)
|
||||
{
|
||||
return Candidate.SelectorId == Selector.SelectorId && Candidate.IsStructurallyValid();
|
||||
}
|
||||
);
|
||||
if (ActiveChoice == nullptr)
|
||||
{
|
||||
OutBlockedReason = FString::Printf(
|
||||
TEXT("Generated-mode execution is blocked because selector %s is unresolved."),
|
||||
*Selector.Label
|
||||
);
|
||||
return false;
|
||||
}
|
||||
|
||||
const FHyperTwistTrainingImportedRuntimeSelectorChoice* RequestChoice =
|
||||
LaunchRequest.LaunchConfig.SelectorChoices.FindByPredicate(
|
||||
[&Selector](const FHyperTwistTrainingImportedRuntimeSelectorChoice& Candidate)
|
||||
{
|
||||
return Candidate.SelectorId == Selector.SelectorId && Candidate.IsStructurallyValid();
|
||||
}
|
||||
);
|
||||
if (RequestChoice == nullptr || RequestChoice->SelectedValue != ActiveChoice->SelectedValue)
|
||||
{
|
||||
bNeedsFreshLaunchRequest = true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
if (bNeedsFreshLaunchRequest)
|
||||
|
|
@ -1213,48 +1295,28 @@ bool UHyperTwistTrainingSubsystem::TryExecuteActiveImportedGeneratedModeLaunchRe
|
|||
OutBlockedReason = TEXT("Generated-mode execution could not derive a structurally valid launch request.");
|
||||
return false;
|
||||
}
|
||||
if (LaunchRequest.LaunchConfig.DeckId != ActiveRunState.ActiveDeck.DeckId
|
||||
|| LaunchRequest.LaunchConfig.SurfaceId != RuntimeSurface.SurfaceId
|
||||
|| !LaunchRequest.LaunchConfig.RuntimeModeId.Equals(
|
||||
RuntimeSurface.RuntimeModeId,
|
||||
ESearchCase::IgnoreCase))
|
||||
if (!UHyperTwistTrainingCatalogLibrary::TryBuildImportedGeneratedModeLaunchConfig(
|
||||
ActiveRunState.ActiveDeck,
|
||||
ActiveRunState.ImportedRuntimeSelectionState,
|
||||
ActiveRunState.Session,
|
||||
ExpectedLaunchConfig))
|
||||
{
|
||||
OutBlockedReason = TEXT("Active generated-mode launch request does not match the active runtime surface.");
|
||||
OutBlockedReason =
|
||||
TEXT("Generated-mode execution could not derive a structurally valid launch request from the active selector state.");
|
||||
return false;
|
||||
}
|
||||
|
||||
for (const FHyperTwistTrainingImportedRuntimeSelector& Selector : RuntimeSurface.Selectors)
|
||||
FHyperTwistTrainingImportedRuntimeSurface RuntimeSurface;
|
||||
if (!UHyperTwistTrainingCatalogLibrary::TryGetImportedRuntimeSurfaceFromDeck(
|
||||
ActiveRunState.ActiveDeck,
|
||||
RuntimeSurface)
|
||||
|| !HyperTwistTrainingSubsystemInternal::DoesGeneratedModeLaunchRequestMatchLaunchConfig(
|
||||
LaunchRequest,
|
||||
RuntimeSurface,
|
||||
ExpectedLaunchConfig))
|
||||
{
|
||||
const FHyperTwistTrainingImportedRuntimeSelectorChoice* RequestChoice =
|
||||
LaunchRequest.LaunchConfig.SelectorChoices.FindByPredicate(
|
||||
[&Selector](const FHyperTwistTrainingImportedRuntimeSelectorChoice& Candidate)
|
||||
{
|
||||
return Candidate.SelectorId == Selector.SelectorId && Candidate.IsStructurallyValid();
|
||||
}
|
||||
);
|
||||
const FHyperTwistTrainingImportedRuntimeSelectorChoice* ActiveChoice =
|
||||
ActiveRunState.ImportedRuntimeSelectionState.SelectorChoices.FindByPredicate(
|
||||
[&Selector](const FHyperTwistTrainingImportedRuntimeSelectorChoice& Candidate)
|
||||
{
|
||||
return Candidate.SelectorId == Selector.SelectorId && Candidate.IsStructurallyValid();
|
||||
}
|
||||
);
|
||||
if (RequestChoice == nullptr || ActiveChoice == nullptr)
|
||||
{
|
||||
OutBlockedReason = FString::Printf(
|
||||
TEXT("Generated-mode execution is blocked because selector %s is unresolved."),
|
||||
*Selector.Label
|
||||
);
|
||||
return false;
|
||||
}
|
||||
if (RequestChoice->SelectedValue != ActiveChoice->SelectedValue)
|
||||
{
|
||||
OutBlockedReason = FString::Printf(
|
||||
TEXT("Generated-mode execution is blocked because selector %s no longer matches the active selection state."),
|
||||
*Selector.Label
|
||||
);
|
||||
return false;
|
||||
}
|
||||
OutBlockedReason =
|
||||
TEXT("Generated-mode execution could not persist a launch request that matched the active selector state.");
|
||||
return false;
|
||||
}
|
||||
|
||||
const FHyperTwistTrainingRunState SourceRunState = ActiveRunState;
|
||||
|
|
@ -1716,6 +1778,36 @@ FHyperTwistTrainingCoachPanelState UHyperTwistTrainingSubsystem::GetActiveCoachP
|
|||
LatestGeneratedModeLaunchRequest
|
||||
);
|
||||
}
|
||||
|
||||
FHyperTwistTrainingImportedRuntimeSurface ActiveRuntimeSurface;
|
||||
if (UHyperTwistTrainingCatalogLibrary::TryGetImportedRuntimeSurfaceFromDeck(
|
||||
ActiveRunState.ActiveDeck,
|
||||
ActiveRuntimeSurface)
|
||||
&& ActiveRuntimeSurface.IsStructurallyValid()
|
||||
&& ActiveRuntimeSurface.SurfaceKind.Equals(TEXT("generated-mode"), ESearchCase::IgnoreCase))
|
||||
{
|
||||
PanelState.bHasActiveGeneratedModeExecutionTarget = true;
|
||||
|
||||
FHyperTwistTrainingImportedGeneratedModeLaunchConfig ActiveExecutionLaunchConfig;
|
||||
bool bRequiresLaunchRequestRefresh = false;
|
||||
FString GeneratedModeExecutionBlockedReason;
|
||||
if (HyperTwistTrainingSubsystemInternal::TryResolveGeneratedModeExecutionLaunchConfig(
|
||||
ActiveRunState,
|
||||
ActiveImportedGeneratedModeLaunchRequest,
|
||||
ActiveExecutionLaunchConfig,
|
||||
bRequiresLaunchRequestRefresh,
|
||||
GeneratedModeExecutionBlockedReason))
|
||||
{
|
||||
PanelState.bCanExecuteActiveGeneratedModeLaunchRequest = true;
|
||||
PanelState.bActiveGeneratedModeExecutionWillRefreshLaunchRequest =
|
||||
bRequiresLaunchRequestRefresh;
|
||||
}
|
||||
else
|
||||
{
|
||||
PanelState.ActiveGeneratedModeExecutionBlockedReason =
|
||||
GeneratedModeExecutionBlockedReason;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const FHyperTwistTrainingCoachSessionQueueStateEntry* NextRunnableEntry =
|
||||
|
|
|
|||
|
|
@ -6738,6 +6738,18 @@ struct FHyperTwistTrainingCoachPanelState
|
|||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
FString LatestGeneratedModeSelectorSummaryLine;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
bool bHasActiveGeneratedModeExecutionTarget = false;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
bool bCanExecuteActiveGeneratedModeLaunchRequest = false;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
bool bActiveGeneratedModeExecutionWillRefreshLaunchRequest = false;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
FString ActiveGeneratedModeExecutionBlockedReason;
|
||||
|
||||
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "HyperTwist")
|
||||
FString PrimaryActionLabel;
|
||||
|
||||
|
|
|
|||
|
|
@ -3,4 +3,4 @@
|
|||
#include "UnrealHyperTwist.h"
|
||||
#include "Modules/ModuleManager.h"
|
||||
|
||||
IMPLEMENT_PRIMARY_GAME_MODULE( FDefaultGameModuleImpl, UnrealHyperTwist, "UnrealHyperTwist" );
|
||||
IMPLEMENT_PRIMARY_GAME_MODULE(FDefaultGameModuleImpl, UnrealHyperTwist, "UnrealHyperTwist");
|
||||
|
|
|
|||
|
|
@ -3,4 +3,3 @@
|
|||
#pragma once
|
||||
|
||||
#include "CoreMinimal.h"
|
||||
|
||||
|
|
|
|||
|
|
@ -1,100 +0,0 @@
|
|||
Role: Principal Software Engineer at a AAA Game Studio, building tooling for Unreal Engine 5.
|
||||
Project: VR Codebase Inspector and Security Pen-Testing Analyzer.
|
||||
Architecture: Unreal Engine 5 (C++ Client) <---WebSocket---> C# .NET 8 Backend Analysis Server.
|
||||
Constraint: The C# server runs on a local workstation (or cloud VM) alongside the VR headset. It must process arbitrary open-source codebases (C++, C#, Python, JS) and return JSON graphs of vulnerabilities and call hierarchies.
|
||||
|
||||
Technical Directives (To Prevent AI Model Degradation into .NET Framework patterns):
|
||||
1. AOT Compatibility: This server may eventually run inside a Docker container with `-p:PublishAot=true`. Therefore, YOU CANNOT USE REFLECTION (`GetProperties()`, `GetMethods()`). All type scanning MUST use **Roslyn Source Generators** OR **Microsoft.CodeAnalysis** (Compilation APIs) which are AOT-safe.
|
||||
2. Roslyn Analyzer: Write a C# Script that uses `Microsoft.CodeAnalysis.CSharp` to parse a given folder of C# code and return a list of `UnsafeMethodCall` objects (e.g., `Process.Start` usage, `DllImport` attributes). YOU MUST PROVIDE A `Solution` file and `Project` loader that handles `AdhocWorkspace`.
|
||||
3. C++ Parsing: For the Unreal side, DO NOT attempt to wrap Unreal C++ in C#. Instead, C# will shell out to `clang-tidy` or `cppcheck`. Show me the `Process` spawning logic with **OutputDataReceived** event handlers that send progress updates back to the client via SignalR.
|
||||
4. Performance: Use `System.IO.Pipelines` (PipeReader) to stream massive source files (e.g., 100MB `Intermediate/Build/Source.cpp`) without allocating huge strings on the Large Object Heap.
|
||||
5. Frontend Interop: Generate a TypeScript client definition from the C# SignalR hub using `@microsoft/signalr-protocol-msgpack`. Include the command for `nswag` or `openapi-generator`.
|
||||
|
||||
Output Expected:
|
||||
1. A detailed architecture diagram in Mermaid format.
|
||||
2. The C# code for `RoslynAnalyzerService.cs` and `CppAnalyzerService.cs`.
|
||||
3. Explanation of how to handle the **Impedance Mismatch**: C# wants deterministic disposal, Unreal expects persistent open sockets. How will you manage lifetime of the WebSocket connection?
|
||||
4. A note on **Security**: This tool will be used for pen-testing. The C# server executes untrusted user scripts (via shell). Provide the `ProcessStartInfo` configuration to ensure **Sandboxing** (e.g., `UseShellExecute=false`, `WorkingDirectory` restriction, `EnvironmentVariables` scrub).
|
||||
|
||||
Continue generating the response now. Provide full code blocks, do not use placeholders like "// logic here". Be explicit.
|
||||
|
||||
---
|
||||
|
||||
Role: Senior systems architect for math-heavy multiplayer applications with Unreal frontends and C# backend services.
|
||||
|
||||
Project: Hypercubing virtual reality application. Unreal will render and handle immersive interaction. C# is being considered for simulation, multiplayer backend, persistence, telemetry, and orchestration.
|
||||
|
||||
Objective: Design a high-performance architecture where Unreal remains the client/runtime and C# owns the durable and computational service layer.
|
||||
|
||||
Hard constraints:
|
||||
1. Do not propose replacing Unreal gameplay/runtime with C#.
|
||||
2. Use C# for:
|
||||
- simulation services where server authority is needed
|
||||
- session state
|
||||
- matchmaking
|
||||
- persistence
|
||||
- replay/event logs
|
||||
- analytics
|
||||
- user/session/account services
|
||||
- collaboration or shared puzzle state
|
||||
3. Assume the math may become non-trivial and should remain strongly typed and testable.
|
||||
4. Prefer explicit contracts and deterministic state transitions.
|
||||
5. No reflection-driven architecture in core simulation paths.
|
||||
6. Design for low-latency updates, reconnect, state recovery, and versioned protocol evolution.
|
||||
7. Assume future scale from single-user local mode up to networked synchronized sessions.
|
||||
|
||||
Deliverables:
|
||||
- Service layout
|
||||
- Unreal-to-backend communication model
|
||||
- State authority model
|
||||
- Sync strategy
|
||||
- Persistence model
|
||||
- Replay/event sourcing recommendation
|
||||
- Math/simulation placement
|
||||
- Testing strategy for deterministic correctness
|
||||
- Deployment options from local to hosted
|
||||
- AI-assisted development constraints for C# code generation on this project
|
||||
|
||||
If output is interrupted, continue from the exact next unfinished section. Do not summarize. Continue raw technical output only.
|
||||
|
||||
---
|
||||
|
||||
Role: Senior architect for C# backends and Unreal-integrated systems.
|
||||
|
||||
Project: Virtual reality codebase inspector and pentest platform. Unreal is the client/runtime. C# is being considered for backend, analysis, orchestration, collaboration, and data services.
|
||||
|
||||
Objective: Design the system so Unreal remains responsible for rendering and interaction, while C# owns the heavy platform logic.
|
||||
|
||||
Hard constraints:
|
||||
1. Do not propose writing Unreal gameplay code in C#.
|
||||
2. Treat Unreal as C++/Blueprint client only.
|
||||
3. Use C# for:
|
||||
- repository ingestion
|
||||
- graph/index building
|
||||
- code intelligence
|
||||
- plugin and tool orchestration
|
||||
- pentest job scheduling
|
||||
- evidence storage
|
||||
- collaboration services
|
||||
- multiplayer/session backend
|
||||
4. The system must support polyglot repositories and external scanners written in many languages.
|
||||
5. Prefer out-of-process boundaries, gRPC/HTTP/WebSocket boundaries, or worker sandbox boundaries over in-process interop.
|
||||
6. No reflection-heavy magic in core runtime paths.
|
||||
7. Assume large repos, long-running scans, and untrusted tool output.
|
||||
8. Design for cancellation, resumability, auditability, and multi-tenant isolation.
|
||||
|
||||
Deliverables:
|
||||
- Full architecture with Unreal placement and C# placement
|
||||
- Recommended service decomposition
|
||||
- Worker sandbox strategy
|
||||
- Plugin execution strategy
|
||||
- Security boundaries for pentest tooling
|
||||
- Repository indexing pipeline
|
||||
- Real-time event streaming into VR
|
||||
- Storage model for findings, graphs, evidence, and sessions
|
||||
- Auth model and operator roles
|
||||
- Queueing and scheduling design
|
||||
- Deployment topology for local workstation, single VPS, and larger multi-node setups
|
||||
- AI integration boundaries and safe prompting strategy for code and security tasks
|
||||
|
||||
If output is interrupted, continue exactly where you stopped. Do not summarize. Output the remaining architecture in the same level of detail.
|
||||
Loading…
Add table
Reference in a new issue