Files
FreeCADWasmDev/docs/p6/plot-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

47 lines
1.5 KiB
JSON

{
"schema": "freecad-web-plot-source-boundary/v1",
"task_id": "FW-P6-PLT-A",
"status": "pass",
"source_revision": "0a2e7ce7f52ba71d54c62708c9ac5c76ca142231",
"input_sha256": "e9bd5da9126395a697f8f4b1f44638926fd85ac4c97c3a14f89002f4562368d7",
"module": "Plot",
"cmake": {
"target": "src/Mod/Plot/CMakeLists.txt:10",
"scriptCopy": "src/Mod/Plot/CMakeLists.txt:14",
"install": "src/Mod/Plot/CMakeLists.txt:16-21",
"appSources": [
"src/Mod/Plot/Plot.py"
]
},
"python": {
"entry": "src/Mod/Plot/Plot.py:26-61",
"apiEntrypoints": [
"figure:116",
"plot:131",
"series:147",
"removeSerie:155",
"legend:177",
"save:310"
],
"dependencies": [
"PySide",
"matplotlib",
"QtAgg backend"
]
},
"gui": {
"buildFlag": "No C++ BUILD_GUI target; desktop Plot.py uses PySide Qt widgets",
"webBoundary": "emscripten branch uses a standard-library SVG/data backend; desktop PySide/QtAgg remains unchanged"
},
"actions": {
"inspect": "source inventory",
"pythonApi": "Plot.py functions plus Web headless backend",
"persistence": "not applicable: no App::Document object"
},
"boundaries": [
"Source boundary now records the conditional Web backend; runtime and browser evidence remain in separate contracts.",
"Plot is a Python/Qt/matplotlib GUI helper with no native document object or file format entry.",
"Python API is executable in GUI-free Web without PySide/QtAgg; GUI interaction remains desktop-only."
]
}