48 lines
2.9 KiB
JSON
48 lines
2.9 KiB
JSON
{
|
|
"batchId": "ba4cad68ea8ed95624783d80",
|
|
"status": "partially_connected",
|
|
"commands": {
|
|
"Std_DlgMacroExecute": {
|
|
"status": "implementation_ready",
|
|
"next": "待用户使用",
|
|
"behavior": "Mounted macro file list/read/save/run controls route through part.pythonFamilyBatch to the PartBox macro handler; OPFS files are restored into the WASM macro directory and native source results are persisted back to OPFS."
|
|
},
|
|
"Std_DlgMacroExecuteDirect": {
|
|
"status": "implementation_ready",
|
|
"next": "待用户使用",
|
|
"behavior": "The mounted editor source is compiled and executed in the current PartBox Python runtime; execution errors retain partial execution details and trigger active-document scene refresh."
|
|
},
|
|
"Std_DlgMacroRecord": {
|
|
"status": "partially_connected",
|
|
"behavior": "Mounted start/stop/status/cancel controls manage a native recording session. Successful outer fc_web_dispatch_json requests in PartBox are captured and saved as executable Python calls to the same native dispatcher. Stopping saves the actual macro source to OPFS.",
|
|
"remaining": "Commands executed through separate numeric C exports or other runtime owners do not pass through this capture hook and are not recorded. Complete command emission coverage before treating recording as fully connected.",
|
|
"nextAnchors": [
|
|
"freecad-source/src/WebAssembly/FreeCADCoreProbe/WebMacroRecording.h:45",
|
|
"web/src/part.worker.ts:15"
|
|
]
|
|
},
|
|
"Std_MacroAttachDebugger": {
|
|
"status": "partially_connected",
|
|
"behavior": "React supplies host/port and attach/status operations. The PartBox handler calls debugpy.connect and reports is_client_connected; native Python import and connection errors are preserved.",
|
|
"remaining": "The supplied desktop RemoteDebugger backend imports FreeCADGui/PySide and starts an external Python adapter. This was replaced at the dialog boundary with a direct debugpy connection, but availability of debugpy and a WASM-compatible socket transport remains unresolved. A Qt-only fallback is not used.",
|
|
"nextAnchors": [
|
|
"freecad-source/src/Gui/RemoteDebugger.py:63",
|
|
"freecad-source/src/WebAssembly/FreeCADCoreProbe/WebMacroCommands.h:80"
|
|
]
|
|
}
|
|
},
|
|
"nativeOwner": "FreeCADWebPartBoxProbe",
|
|
"changedNativeSources": [
|
|
"freecad-source/src/WebAssembly/FreeCADCoreProbe/PartBoxProbe.cpp",
|
|
"freecad-source/src/WebAssembly/FreeCADCoreProbe/WebMacroCommands.h",
|
|
"freecad-source/src/WebAssembly/FreeCADCoreProbe/WebMacroRecording.h",
|
|
"freecad-source/src/WebAssembly/FreeCADCoreProbe/NativeDocumentView.h"
|
|
],
|
|
"changedApplicationSources": [
|
|
"web/src/web-desktop-adapter.ts",
|
|
"web/src/workbench-shell.tsx",
|
|
"web/src/storage.ts"
|
|
],
|
|
"outerPipeline": "Incremental compilation must include the changed PartBox owner, not only FreeCADWebWebRuntimeProbe; outer pipeline owns linking, resource sync and route generation."
|
|
}
|