Files
FreeCADWasmDev/docs/p6/openscad-source-boundary.json
wangdequan 9a7c4f0335 Save FreeCAD Web workspace sources and user validation evidence
IFC native binding remains incomplete; preserve accurate test results.
2026-09-15 22:01:58 +08:00

62 lines
3.4 KiB
JSON

{
"schema": "freecad-web-source-boundary/v1",
"task_id": "FW-P6-OSC-A",
"status": "pass",
"source_revision": "837f44197c879e41198b7e3bed55c897a9920520",
"input_sha256": "868957a82427f383445072d843a601bbba2d8d18949b21ef8d873264ba6b477f",
"result_sha256": "adda49a61a7e5526b55c1e1d7b8970a4793baac6029f0916509d818466f99512",
"commands": [
"rg -n \"BUILD_|Init|addObject|registerType|PyInit\" src/Mod/OpenSCAD",
"rg -n --glob '!Resources/translations/**' --glob '*.py' \"^(import |from )|FreeCAD\\.(addImportType|addExportType)|FreeCADGui|GuiUp|subprocess|callopenscad|process.*OpenSCAD|meshop|def (open|insert|processcsg|p_.*action)\" src/Mod/OpenSCAD",
"git rev-parse HEAD",
"git status --short --porcelain=v1"
],
"artifacts": [
{
"path": "docs/p6/openscad-source-boundary.log",
"bytes": 38913,
"lines": 353,
"sha256": "adda49a61a7e5526b55c1e1d7b8970a4793baac6029f0916509d818466f99512"
}
],
"boundaries": {
"cmake": {
"module_include": "src/Mod/CMakeLists.txt:58",
"target": "src/Mod/OpenSCAD/CMakeLists.txt:70-72 defines ADD_CUSTOM_TARGET(OpenSCAD ALL), not a compiled library",
"source_copy": "src/Mod/OpenSCAD/CMakeLists.txt:78-88 copies Python sources and the GUI resource",
"app_gui_split": "BUILD_GUI gates the Qt resource and GUI test/resource copy at src/Mod/OpenSCAD/CMakeLists.txt:3-5,22-24,59-61,84-89",
"install": "src/Mod/OpenSCAD/CMakeLists.txt:91-114 installs Python sources, resources, icon and tests"
},
"direct_dependencies": [
"FreeCAD App API: src/Mod/OpenSCAD/Init.py:28-43 and OpenSCADUtils.py:36-40",
"Part, Mesh and MeshPart: src/Mod/OpenSCAD/OpenSCADUtils.py:36-40",
"Draft, PLY lexer/parser and XML/SAX: src/Mod/OpenSCAD/importCSG.py:36-50",
"FreeCADGui, PySide and Qt resource: src/Mod/OpenSCAD/OpenSCADCommands.py:35-38 and InitGui.py:55,161-163",
"External OpenSCAD executable through subprocess: src/Mod/OpenSCAD/OpenSCADUtils.py:31,117-225"
],
"type_registration": [
"Import/export type registration: src/Mod/OpenSCAD/Init.py:31-43",
"Python feature proxies and properties: src/Mod/OpenSCAD/OpenSCADFeatures.py:171-180,186-241,532-555",
"Document object creation during CSG parsing: src/Mod/OpenSCAD/importCSG.py:390-441,582-659,1059-1380"
],
"gui_registration": [
"Workbench class and command lists: src/Mod/OpenSCAD/InitGui.py:36-68",
"Executable-gated commands: src/Mod/OpenSCAD/InitGui.py:91-121",
"Workbench/menu registration: src/Mod/OpenSCAD/InitGui.py:153-172",
"FreeCADGui.addCommand registrations: src/Mod/OpenSCAD/OpenSCADCommands.py:590-604"
],
"primary_actions": [
"CSG/scad open and insert entry points: src/Mod/OpenSCAD/importCSG.py:112-158",
"CSG parser actions for primitives and booleans: src/Mod/OpenSCAD/importCSG.py:202-240,601-659,1059-1380",
"External OpenSCAD conversion and mesh boolean path: src/Mod/OpenSCAD/OpenSCADUtils.py:139-225,487-565",
"GUI hull and Minkowski actions: src/Mod/OpenSCAD/OpenSCADCommands.py:550-583"
],
"runtime_boundaries": [
"The source probe does not establish a WASM/runtime pass.",
"The openscad executable is not present in PATH; executable-dependent actions remain unavailable until an allowed runtime dependency is supplied.",
"Existing source worktree changes were recorded and not modified by this probe."
]
},
"generated_at": "2026-08-22T12:43:54+08:00"
}