Files
FreeCADWasmDev/docs/p6/sketcher-tier1-readonly-family-facade.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

426 lines
18 KiB
JSON

{
"schema": "freecad-web-p6-sketcher-tier1-readonly-family-facade/v1",
"taskId": "FW-P6-FPA-F1-SKETCHER",
"module": "Sketcher",
"command": "sketcher.pythonFamilyBatch",
"result": "pass",
"envelopeSchema": "freecad-web-facade/v1",
"typedSchema": "freecad-web-sketcher/python-family-batch/v1",
"trace": {
"ready": {
"kind": "ready",
"action": "sketcher.pythonFamilyBatch"
},
"success": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "sketcher-family-success-1",
"result": {
"cmd": "sketcher.pythonFamilyBatch",
"count": 20,
"module": "Sketcher",
"ok": true,
"records": [
{
"apiId": "py:Sketcher:class:Constraint",
"code": "native_python_symbol",
"family": "generic-object",
"message": "Sketcher Python symbol is registered and resolved by FreeCAD",
"name": "Constraint",
"native": true,
"parameterSchema": "source-declared",
"replay": "native-python-reflection",
"resourcesReleased": true,
"returnSchema": "Sketcher.Constraint",
"sourceEntry": "src/Mod/Sketcher/App/Constraint.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "py:Sketcher:class:ExternalGeometryExtension",
"code": "native_python_symbol",
"family": "geometry-value",
"message": "Sketcher Python symbol is registered and resolved by FreeCAD",
"name": "ExternalGeometryExtension",
"native": true,
"parameterSchema": "source-declared",
"replay": "native-python-reflection",
"resourcesReleased": true,
"returnSchema": "Sketcher.ExternalGeometryExtension",
"sourceEntry": "src/Mod/Sketcher/App/ExternalGeometryExtension.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "py:Sketcher:class:ExternalGeometryFacade",
"code": "native_python_symbol",
"family": "geometry-value",
"message": "Sketcher Python symbol is registered and resolved by FreeCAD",
"name": "ExternalGeometryFacade",
"native": true,
"parameterSchema": "source-declared",
"replay": "native-python-reflection",
"resourcesReleased": true,
"returnSchema": "Sketcher.ExternalGeometryFacade",
"sourceEntry": "src/Mod/Sketcher/App/ExternalGeometryFacade.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "py:Sketcher:class:GeometryFacade",
"code": "native_python_symbol",
"family": "geometry-value",
"message": "Sketcher Python symbol is registered and resolved by FreeCAD",
"name": "GeometryFacade",
"native": true,
"parameterSchema": "source-declared",
"replay": "native-python-reflection",
"resourcesReleased": true,
"returnSchema": "Sketcher.GeometryFacade",
"sourceEntry": "src/Mod/Sketcher/App/GeometryFacade.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "py:Sketcher:class:Sketch",
"code": "native_python_symbol",
"family": "generic-object",
"message": "Sketcher Python symbol is registered and resolved by FreeCAD",
"name": "Sketch",
"native": true,
"parameterSchema": "source-declared",
"replay": "native-python-reflection",
"resourcesReleased": true,
"returnSchema": "Sketcher.Sketch",
"sourceEntry": "src/Mod/Sketcher/App/Sketch.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "py:Sketcher:class:SketchGeometryExtension",
"code": "native_python_symbol",
"family": "geometry-value",
"message": "Sketcher Python symbol is registered and resolved by FreeCAD",
"name": "SketchGeometryExtension",
"native": true,
"parameterSchema": "source-declared",
"replay": "native-python-reflection",
"resourcesReleased": true,
"returnSchema": "Sketcher.SketchGeometryExtension",
"sourceEntry": "src/Mod/Sketcher/App/SketchGeometryExtension.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "py:Sketcher:class:SketcherWorkbench",
"code": "gui_dependency_unavailable",
"family": "generic-object",
"message": "Sketcher GUI/view API requires FreeCADGui unavailable in the headless Web runtime",
"name": "SketcherWorkbench",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "gui-resource",
"sourceEntry": "src/Mod/Sketcher/InitGui.py",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "restricted"
},
{
"apiId": "py:Sketcher:class:ViewProviderSketchGeometryExtension",
"code": "gui_dependency_unavailable",
"family": "view-resource",
"message": "Sketcher GUI/view API requires FreeCADGui unavailable in the headless Web runtime",
"name": "ViewProviderSketchGeometryExtension",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "gui-resource",
"sourceEntry": "src/Mod/Sketcher/Gui/ViewProviderSketchGeometryExtension.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "restricted"
},
{
"apiId": "py:Sketcher:method:ExternalGeometryFacade.getExtensions",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Sketcher Python method has no method-level native argument/return replay",
"name": "ExternalGeometryFacade.getExtensions",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sketcher/App/ExternalGeometryFacade.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
},
{
"apiId": "py:Sketcher:method:GeometryFacade.getExtensions",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Sketcher Python method has no method-level native argument/return replay",
"name": "GeometryFacade.getExtensions",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sketcher/App/GeometryFacade.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
},
{
"apiId": "py:Sketcher:method:SketchObject.getActive",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Sketcher Python method has no method-level native argument/return replay",
"name": "SketchObject.getActive",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sketcher/App/SketchObject.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
},
{
"apiId": "py:Sketcher:method:SketchObject.getAxis",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Sketcher Python method has no method-level native argument/return replay",
"name": "SketchObject.getAxis",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sketcher/App/SketchObject.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
},
{
"apiId": "py:Sketcher:method:SketchObject.getConstruction",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Sketcher Python method has no method-level native argument/return replay",
"name": "SketchObject.getConstruction",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sketcher/App/SketchObject.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
},
{
"apiId": "py:Sketcher:method:SketchObject.getDatum",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Sketcher Python method has no method-level native argument/return replay",
"name": "SketchObject.getDatum",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sketcher/App/SketchObject.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
},
{
"apiId": "py:Sketcher:method:SketchObject.getDriving",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Sketcher Python method has no method-level native argument/return replay",
"name": "SketchObject.getDriving",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sketcher/App/SketchObject.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
},
{
"apiId": "py:Sketcher:method:SketchObject.getGeoVertexIndex",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Sketcher Python method has no method-level native argument/return replay",
"name": "SketchObject.getGeoVertexIndex",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sketcher/App/SketchObject.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
},
{
"apiId": "py:Sketcher:method:SketchObject.getGeometryId",
"code": "method_evidence_pending",
"family": "geometry-value",
"message": "Sketcher Python method has no method-level native argument/return replay",
"name": "SketchObject.getGeometryId",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sketcher/App/SketchObject.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
},
{
"apiId": "py:Sketcher:method:SketchObject.getPoint",
"code": "method_evidence_pending",
"family": "geometry-value",
"message": "Sketcher Python method has no method-level native argument/return replay",
"name": "SketchObject.getPoint",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sketcher/App/SketchObject.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
},
{
"apiId": "py:Sketcher:method:SketchObject.getVirtualSpace",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Sketcher Python method has no method-level native argument/return replay",
"name": "SketchObject.getVirtualSpace",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sketcher/App/SketchObject.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
},
{
"apiId": "py:Sketcher:method:SketchObject.isPointOnCurve",
"code": "method_evidence_pending",
"family": "geometry-value",
"message": "Sketcher Python method has no method-level native argument/return replay",
"name": "SketchObject.isPointOnCurve",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Sketcher/App/SketchObject.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
}
],
"resourcesReleased": true,
"schema": "freecad-web-sketcher/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-1-readonly"
}
},
"duplicate": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "sketcher-family-success-1",
"error": {
"code": "duplicate_request",
"message": "requestId has already been dispatched"
}
},
"cancelled": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "sketcher-family-cancel-1",
"error": {
"code": "cancelled",
"message": "request was cancelled"
}
},
"crossModule": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "sketcher-family-cross-1",
"result": {
"cmd": "sketcher.pythonFamilyBatch",
"count": 1,
"module": "Sketcher",
"ok": true,
"records": [
{
"apiId": "py:BIM:class:Constraint",
"code": "unmatched_source_record",
"family": "generic-object",
"message": "Sketcher API record is not part of this module-scoped adapter",
"name": "Constraint",
"native": true,
"resourcesReleased": true,
"sourceEntry": "src/Mod/Sketcher/App/Constraint.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
}
],
"resourcesReleased": true,
"schema": "freecad-web-sketcher/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-1-readonly"
}
},
"reset": {
"kind": "reset",
"requestId": "sketcher-family-reset-1"
},
"afterReset": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "sketcher-family-after-reset-1",
"result": {
"cmd": "sketcher.pythonFamilyBatch",
"count": 1,
"module": "Sketcher",
"ok": true,
"records": [
{
"apiId": "py:Sketcher:class:Constraint",
"code": "native_python_symbol",
"family": "generic-object",
"message": "Sketcher Python symbol is registered and resolved by FreeCAD",
"name": "Constraint",
"native": true,
"parameterSchema": "source-declared",
"replay": "native-python-reflection",
"resourcesReleased": true,
"returnSchema": "Sketcher.Constraint",
"sourceEntry": "src/Mod/Sketcher/App/Constraint.pyi",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
}
],
"resourcesReleased": true,
"schema": "freecad-web-sketcher/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-1-readonly"
}
}
},
"traceSha256": "a58e2a1b8d6b0c14813ec10c7e64290d4996bf2b40a938ba3dbcbf7592a9a688",
"sequencing": {
"requestCount": 5,
"responseCount": 7,
"maxActive": 1,
"cancelAccepted": true,
"resetAccepted": true
},
"schemaChecks": {
"nativeSource": true,
"resourcesReleased": true,
"terminalStatuses": true,
"noNativePointers": true
},
"artifacts": {
"native": "docs/p6/sketcher-tier1-readonly-family-runtime.json",
"worker": "web/src/sketcher-python.worker.ts",
"facade": "web/src/sketcher-python-family-facade.ts"
}
}