Files
FreeCADWasmDev/docs/p6/material-module-batch-96ca08a866686cbb52509a99-runtime.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

528 lines
22 KiB
JSON

{
"schema": "freecad-web-material-module-batch-runtime/v1",
"taskId": "FW-P6-FPA-Y",
"batchId": "96ca08a866686cbb52509a99",
"module": "Material",
"tier": "object-contract",
"family": "data-property",
"status": "pass_with_boundaries",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"route": {
"command": "material.pythonFamilyBatch",
"native": "freecad-source/src/WebAssembly/FreeCADCoreProbe/MaterialKernelProbe.cpp:fc_web_dispatch_json",
"facade": "web/src/material-python-family-facade.ts",
"worker": "web/src/material.worker.ts"
},
"input": {
"cmd": "material.pythonFamilyBatch",
"args": {
"tier": "object-contract",
"records": [
{
"apiId": "obj:Material:Materials::ModelLibraryLocal",
"name": "Materials::ModelLibraryLocal",
"family": "data-property",
"kind": "object",
"sourcePath": "src/Mod/Material/App/ModelLibrary.cpp",
"disposition": "planned"
},
{
"apiId": "obj:Material:Materials::ModelManager",
"name": "Materials::ModelManager",
"family": "data-property",
"kind": "object",
"sourcePath": "src/Mod/Material/App/ModelManager.cpp",
"disposition": "planned"
},
{
"apiId": "obj:Material:Materials::ModelManagerExternal",
"name": "Materials::ModelManagerExternal",
"family": "data-property",
"kind": "object",
"sourcePath": "src/Mod/Material/App/ModelManagerExternal.cpp",
"disposition": "planned"
},
{
"apiId": "obj:Material:Materials::ModelManagerLocal",
"name": "Materials::ModelManagerLocal",
"family": "data-property",
"kind": "object",
"sourcePath": "src/Mod/Material/App/ModelManagerLocal.cpp",
"disposition": "planned"
},
{
"apiId": "obj:Material:Materials::ModelUUIDs",
"name": "Materials::ModelUUIDs",
"family": "data-property",
"kind": "object",
"sourcePath": "src/Mod/Material/App/ModelUuids.cpp",
"disposition": "planned"
},
{
"apiId": "obj:Material:Materials::PropertyMaterial",
"name": "Materials::PropertyMaterial",
"family": "data-property",
"kind": "object",
"sourcePath": "src/Mod/Material/App/PropertyMaterial.cpp",
"disposition": "planned"
}
]
}
},
"inputSha256": "36d5de8236d1b868af2ab9ea123fc018c3e8ed32f1053bdf4c1573c9adb6acde",
"result": {
"cmd": "material.pythonFamilyBatch",
"count": 6,
"module": "Material",
"ok": true,
"records": [
{
"apiId": "obj:Material:Materials::ModelLibraryLocal",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::ModelLibraryLocal",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::ModelLibraryLocal",
"sourceEntry": "src/Mod/Material/App/ModelLibrary.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "obj:Material:Materials::ModelManager",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::ModelManager",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::ModelManager",
"sourceEntry": "src/Mod/Material/App/ModelManager.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "obj:Material:Materials::ModelManagerExternal",
"code": "external_material_unavailable",
"family": "data-property",
"message": "Material external manager is disabled in this Web build",
"name": "Materials::ModelManagerExternal",
"native": true,
"parameterSchema": "none",
"resourcesReleased": true,
"returnSchema": "Materials::MaterialManagerExternal",
"sourceEntry": "src/Mod/Material/App/ModelManagerExternal.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "restricted"
},
{
"apiId": "obj:Material:Materials::ModelManagerLocal",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::ModelManagerLocal",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::ModelManagerLocal",
"sourceEntry": "src/Mod/Material/App/ModelManagerLocal.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "obj:Material:Materials::ModelUUIDs",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::ModelUUIDs",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::ModelUUIDs",
"sourceEntry": "src/Mod/Material/App/ModelUuids.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "obj:Material:Materials::PropertyMaterial",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::PropertyMaterial",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::PropertyMaterial",
"sourceEntry": "src/Mod/Material/App/PropertyMaterial.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
}
],
"resourcesReleased": true,
"schema": "freecad-web-material/python-family-batch/v1",
"source": "freecad-source",
"tier": "object-contract"
},
"resultSha256": "2de441a4fd99bf6fab0a70dff1939cc87a4edcf029c88ca662b0aa07956eaeea",
"replay": {
"equal": true,
"resultSha256": "2de441a4fd99bf6fab0a70dff1939cc87a4edcf029c88ca662b0aa07956eaeea"
},
"facadeWorker": {
"ready": {
"kind": "ready",
"action": "material.pythonFamilyBatch"
},
"success": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "material-object-batch-success",
"result": {
"cmd": "material.pythonFamilyBatch",
"count": 6,
"module": "Material",
"ok": true,
"records": [
{
"apiId": "obj:Material:Materials::ModelLibraryLocal",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::ModelLibraryLocal",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::ModelLibraryLocal",
"sourceEntry": "src/Mod/Material/App/ModelLibrary.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "obj:Material:Materials::ModelManager",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::ModelManager",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::ModelManager",
"sourceEntry": "src/Mod/Material/App/ModelManager.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "obj:Material:Materials::ModelManagerExternal",
"code": "external_material_unavailable",
"family": "data-property",
"message": "Material external manager is disabled in this Web build",
"name": "Materials::ModelManagerExternal",
"native": true,
"parameterSchema": "none",
"resourcesReleased": true,
"returnSchema": "Materials::MaterialManagerExternal",
"sourceEntry": "src/Mod/Material/App/ModelManagerExternal.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "restricted"
},
{
"apiId": "obj:Material:Materials::ModelManagerLocal",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::ModelManagerLocal",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::ModelManagerLocal",
"sourceEntry": "src/Mod/Material/App/ModelManagerLocal.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "obj:Material:Materials::ModelUUIDs",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::ModelUUIDs",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::ModelUUIDs",
"sourceEntry": "src/Mod/Material/App/ModelUuids.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "obj:Material:Materials::PropertyMaterial",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::PropertyMaterial",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::PropertyMaterial",
"sourceEntry": "src/Mod/Material/App/PropertyMaterial.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
}
],
"resourcesReleased": true,
"schema": "freecad-web-material/python-family-batch/v1",
"source": "freecad-source",
"tier": "object-contract"
}
},
"repeat": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "material-object-batch-repeat",
"result": {
"cmd": "material.pythonFamilyBatch",
"count": 6,
"module": "Material",
"ok": true,
"records": [
{
"apiId": "obj:Material:Materials::ModelLibraryLocal",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::ModelLibraryLocal",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::ModelLibraryLocal",
"sourceEntry": "src/Mod/Material/App/ModelLibrary.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "obj:Material:Materials::ModelManager",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::ModelManager",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::ModelManager",
"sourceEntry": "src/Mod/Material/App/ModelManager.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "obj:Material:Materials::ModelManagerExternal",
"code": "external_material_unavailable",
"family": "data-property",
"message": "Material external manager is disabled in this Web build",
"name": "Materials::ModelManagerExternal",
"native": true,
"parameterSchema": "none",
"resourcesReleased": true,
"returnSchema": "Materials::MaterialManagerExternal",
"sourceEntry": "src/Mod/Material/App/ModelManagerExternal.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "restricted"
},
{
"apiId": "obj:Material:Materials::ModelManagerLocal",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::ModelManagerLocal",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::ModelManagerLocal",
"sourceEntry": "src/Mod/Material/App/ModelManagerLocal.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "obj:Material:Materials::ModelUUIDs",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::ModelUUIDs",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::ModelUUIDs",
"sourceEntry": "src/Mod/Material/App/ModelUuids.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
},
{
"apiId": "obj:Material:Materials::PropertyMaterial",
"code": "native_object_contract",
"family": "data-property",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"name": "Materials::PropertyMaterial",
"native": true,
"parameterSchema": "constructor:default",
"resourcesReleased": true,
"returnSchema": "native:Materials::PropertyMaterial",
"sourceEntry": "src/Mod/Material/App/PropertyMaterial.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "exposed"
}
],
"resourcesReleased": true,
"schema": "freecad-web-material/python-family-batch/v1",
"source": "freecad-source",
"tier": "object-contract"
}
},
"crossModule": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "material-object-batch-cross",
"result": {
"cmd": "material.pythonFamilyBatch",
"count": 1,
"module": "Material",
"ok": true,
"records": [
{
"apiId": "obj:BIM:Materials::Library",
"code": "unmatched_source_record",
"family": "data-property",
"message": "Material object record is not part of this module-scoped adapter",
"name": "Materials::ModelLibraryLocal",
"native": true,
"parameterSchema": "unmatched",
"resourcesReleased": true,
"returnSchema": "unmatched",
"sourceEntry": "src/Mod/Material/App/ModelLibrary.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"status": "not_implemented"
}
],
"resourcesReleased": true,
"schema": "freecad-web-material/python-family-batch/v1",
"source": "freecad-source",
"tier": "object-contract"
}
},
"malformed": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "material-object-batch-invalid",
"error": {
"code": "invalid_request",
"message": "Material Python family envelope is invalid"
}
},
"cancelled": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "material-object-batch-cancel",
"error": {
"code": "cancelled",
"message": "request was cancelled"
}
},
"reset": {
"kind": "reset",
"requestId": "material-object-batch-reset"
},
"traceSha256": "fcc0b8ac4ce3deade15b9127cd5dd2a05eb49ba1758a65dd357d999edcd5252d"
},
"dispositionCounts": {
"exposed": 5,
"restricted": 1,
"nonportable": 0,
"not_implemented": 0
},
"records": [
{
"apiId": "obj:Material:Materials::ModelLibraryLocal",
"name": "Materials::ModelLibraryLocal",
"status": "exposed",
"code": "native_object_contract",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"sourceEntry": "src/Mod/Material/App/ModelLibrary.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"evidenceSha256": "e35f9fd69e7f947c843f80a9238642c205179b8ad1549bb466f56808f1111901"
},
{
"apiId": "obj:Material:Materials::ModelManager",
"name": "Materials::ModelManager",
"status": "exposed",
"code": "native_object_contract",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"sourceEntry": "src/Mod/Material/App/ModelManager.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"evidenceSha256": "ae08c0761ba2e82bf3ab560844b858ace9188ff932f49610906e705927a6c43d"
},
{
"apiId": "obj:Material:Materials::ModelManagerExternal",
"name": "Materials::ModelManagerExternal",
"status": "restricted",
"code": "external_material_unavailable",
"message": "Material external manager is disabled in this Web build",
"sourceEntry": "src/Mod/Material/App/ModelManagerExternal.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"evidenceSha256": "ccfb2519823b16f4b96908a2f6f673eeac5a8df435b9d0d201b3ca09660aeef2"
},
{
"apiId": "obj:Material:Materials::ModelManagerLocal",
"name": "Materials::ModelManagerLocal",
"status": "exposed",
"code": "native_object_contract",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"sourceEntry": "src/Mod/Material/App/ModelManagerLocal.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"evidenceSha256": "a349eb2a8d9daf39b0f27c4e81420070ba6612390f4b66e43213f29ea1a6bfdb"
},
{
"apiId": "obj:Material:Materials::ModelUUIDs",
"name": "Materials::ModelUUIDs",
"status": "exposed",
"code": "native_object_contract",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"sourceEntry": "src/Mod/Material/App/ModelUuids.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"evidenceSha256": "ac481999009532f95704d4de0c864031bbdec8532ecb40e6c6ab71be145ebfeb"
},
{
"apiId": "obj:Material:Materials::PropertyMaterial",
"name": "Materials::PropertyMaterial",
"status": "exposed",
"code": "native_object_contract",
"message": "Material object was constructed through the native FreeCAD Materials implementation",
"sourceEntry": "src/Mod/Material/App/PropertyMaterial.cpp",
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
"evidenceSha256": "6cd7eda97223e1f694dc56603b5ef56d975bd6c3d3bc37d52ef343cb73976716"
}
],
"resources": {
"resourcesReleased": true,
"documentMutation": false
},
"artifacts": {
"wasm": {
"path": "web/public/kernel/FreeCADWebMaterialKernelProbe.wasm",
"sha256": "cf31d2e8676526df53683bbfd2e647fcb3b9eb92e8727b138488bbb95c16a227"
},
"loader": {
"path": "web/public/kernel/FreeCADWebMaterialKernelProbe.js",
"sha256": "953e4fa3ecb08926bc802d08038a23f44070b47f7fd126aeee9c5206fe1da53e"
}
},
"boundaries": [
"MaterialManagerExternal remains restricted because BUILD_MATERIAL_EXTERNAL is disabled in the Web build.",
"All statuses, schemas and hashes come from compiled FreeCAD through fc_web_dispatch_json; JavaScript only transports and validates the batch envelope."
]
}