Files
FreeCADWasmDev/docs/p6/import-module-batch-20a323792aa087f959d46594-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

640 lines
26 KiB
JSON

{
"schema": "freecad-web-import-module-batch-runtime/v1",
"taskId": "FW-P6-FPA-Y",
"batchId": "20a323792aa087f959d46594",
"module": "Import",
"tier": "tier-1-readonly",
"family": "generic-object",
"status": "pass_with_boundaries",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"route": {
"command": "import.pythonFamilyBatch",
"native": "freecad-source/src/WebAssembly/FreeCADCoreProbe/ImportRuntimeProbe.cpp:fc_web_dispatch_json",
"facade": "web/src/import-python-family-facade.ts",
"worker": "web/src/import.worker.ts"
},
"input": {
"cmd": "import.pythonFamilyBatch",
"args": {
"tier": "tier-1-readonly",
"records": [
{
"apiId": "py:Import:class:placement",
"name": "placement",
"family": "generic-object",
"sourcePath": "src/Mod/Import/App/SCL_output/config_control_design.py",
"disposition": "planned"
},
{
"apiId": "py:Import:class:axis2_placement_2d",
"name": "axis2_placement_2d",
"family": "generic-object",
"sourcePath": "src/Mod/Import/App/SCL_output/config_control_design.py",
"disposition": "planned"
},
{
"apiId": "py:Import:class:product_category",
"name": "product_category",
"family": "generic-object",
"sourcePath": "src/Mod/Import/App/SCL_output/config_control_design.py",
"disposition": "planned"
},
{
"apiId": "py:Import:class:product_related_product_category",
"name": "product_related_product_category",
"family": "generic-object",
"sourcePath": "src/Mod/Import/App/SCL_output/config_control_design.py",
"disposition": "planned"
},
{
"apiId": "py:Import:class:conic",
"name": "conic",
"family": "generic-object",
"sourcePath": "src/Mod/Import/App/SCL_output/config_control_design.py",
"disposition": "planned"
},
{
"apiId": "py:Import:class:hyperbola",
"name": "hyperbola",
"family": "generic-object",
"sourcePath": "src/Mod/Import/App/SCL_output/config_control_design.py",
"disposition": "planned"
},
{
"apiId": "py:Import:class:address",
"name": "address",
"family": "generic-object",
"sourcePath": "src/Mod/Import/App/SCL_output/config_control_design.py",
"disposition": "planned"
},
{
"apiId": "py:Import:class:organizational_address",
"name": "organizational_address",
"family": "generic-object",
"sourcePath": "src/Mod/Import/App/SCL_output/config_control_design.py",
"disposition": "planned"
}
]
}
},
"inputSha256": "47066a2e49ef16392fa86c57ff9c60ef16cbce1f8107c1facdce1347f4f05687",
"result": {
"cmd": "import.pythonFamilyBatch",
"count": 8,
"module": "Import",
"ok": true,
"records": [
{
"apiId": "py:Import:class:placement",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "placement",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:axis2_placement_2d",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "axis2_placement_2d",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:product_category",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "product_category",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:product_related_product_category",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "product_related_product_category",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:conic",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "conic",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:hyperbola",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "hyperbola",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:address",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "address",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:organizational_address",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "organizational_address",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
}
],
"resourcesReleased": true,
"schema": "freecad-web-import/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-1-readonly"
},
"resultSha256": "942aa934f5325183854d78d7f3bd6f7574e3ce1bf945805b8392861cf5b039d8",
"replay": {
"equal": true,
"resultSha256": "942aa934f5325183854d78d7f3bd6f7574e3ce1bf945805b8392861cf5b039d8"
},
"facadeWorker": {
"ready": {
"kind": "ready",
"action": "import.pythonFamilyBatch"
},
"success": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "import-batch-success",
"result": {
"cmd": "import.pythonFamilyBatch",
"count": 8,
"module": "Import",
"ok": true,
"records": [
{
"apiId": "py:Import:class:placement",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "placement",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:axis2_placement_2d",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "axis2_placement_2d",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:product_category",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "product_category",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:product_related_product_category",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "product_related_product_category",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:conic",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "conic",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:hyperbola",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "hyperbola",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:address",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "address",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:organizational_address",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "organizational_address",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
}
],
"resourcesReleased": true,
"schema": "freecad-web-import/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-1-readonly"
}
},
"repeat": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "import-batch-repeat",
"result": {
"cmd": "import.pythonFamilyBatch",
"count": 8,
"module": "Import",
"ok": true,
"records": [
{
"apiId": "py:Import:class:placement",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "placement",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:axis2_placement_2d",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "axis2_placement_2d",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:product_category",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "product_category",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:product_related_product_category",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "product_related_product_category",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:conic",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "conic",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:hyperbola",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "hyperbola",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:address",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "address",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
},
{
"apiId": "py:Import:class:organizational_address",
"code": "method_evidence_pending",
"family": "generic-object",
"message": "Import Python API has no method-level readonly native evidence",
"name": "organizational_address",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
}
],
"resourcesReleased": true,
"schema": "freecad-web-import/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-1-readonly"
}
},
"crossModule": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "result",
"requestId": "import-batch-cross",
"result": {
"cmd": "import.pythonFamilyBatch",
"count": 1,
"module": "Import",
"ok": true,
"records": [
{
"apiId": "py:BIM:class:Binding",
"code": "unmatched_source_record",
"family": "generic-object",
"message": "Import adapter rejects API records owned by another module",
"name": "placement",
"native": true,
"parameterSchema": "source-declared",
"resourcesReleased": true,
"returnSchema": "source-declared",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"status": "not_implemented"
}
],
"resourcesReleased": true,
"schema": "freecad-web-import/python-family-batch/v1",
"source": "freecad-source",
"tier": "tier-1-readonly"
}
},
"malformed": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "import-batch-invalid",
"error": {
"code": "invalid_request",
"message": "Import Python family envelope is invalid"
}
},
"cancelled": {
"schema": "freecad-web-facade/v1",
"version": 1,
"kind": "error",
"requestId": "import-batch-cancel",
"error": {
"code": "cancelled",
"message": "request was cancelled"
}
},
"reset": {
"kind": "reset",
"requestId": "import-batch-reset"
},
"traceSha256": "13c61f9a8e2ae181e2db4bba4ab20f5541291e55246a15af9abffd39904fd52a"
},
"dispositionCounts": {
"exposed": 0,
"restricted": 0,
"nonportable": 0,
"not_implemented": 8
},
"records": [
{
"apiId": "py:Import:class:placement",
"name": "placement",
"status": "not_implemented",
"code": "method_evidence_pending",
"message": "Import Python API has no method-level readonly native evidence",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"evidenceSha256": "3f027be2a3c4f7a8f0baf9faa1c7e6c811ceddc84958f0c23d0030c3ec9809e0"
},
{
"apiId": "py:Import:class:axis2_placement_2d",
"name": "axis2_placement_2d",
"status": "not_implemented",
"code": "method_evidence_pending",
"message": "Import Python API has no method-level readonly native evidence",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"evidenceSha256": "e62b24a3b37e272cd987bac5c7fdad7231f8f7ec66ca1a3dc06bdbdd53adefa5"
},
{
"apiId": "py:Import:class:product_category",
"name": "product_category",
"status": "not_implemented",
"code": "method_evidence_pending",
"message": "Import Python API has no method-level readonly native evidence",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"evidenceSha256": "27c7ff77d26df29c353c241d0e5d7b373db4d85351febacac4bef3c1578779ce"
},
{
"apiId": "py:Import:class:product_related_product_category",
"name": "product_related_product_category",
"status": "not_implemented",
"code": "method_evidence_pending",
"message": "Import Python API has no method-level readonly native evidence",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"evidenceSha256": "206e8630fbb71461edb22c7cdab54615e651623033f08c9ff11eb2b8f7d2a1ab"
},
{
"apiId": "py:Import:class:conic",
"name": "conic",
"status": "not_implemented",
"code": "method_evidence_pending",
"message": "Import Python API has no method-level readonly native evidence",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"evidenceSha256": "28c9edb7123299a2ffd6516b7283ecc8361f2ec551c701fc1158fd679ea5b292"
},
{
"apiId": "py:Import:class:hyperbola",
"name": "hyperbola",
"status": "not_implemented",
"code": "method_evidence_pending",
"message": "Import Python API has no method-level readonly native evidence",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"evidenceSha256": "37fc4a977191aa1a47ee196ab04cb742d6d8d81b5797d0e1b8f12e07c0cbd7fc"
},
{
"apiId": "py:Import:class:address",
"name": "address",
"status": "not_implemented",
"code": "method_evidence_pending",
"message": "Import Python API has no method-level readonly native evidence",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"evidenceSha256": "41b1aacf004fdc4b2c94c642c1fe9b6b7ccde7603cd95c38a08bb50106af4838"
},
{
"apiId": "py:Import:class:organizational_address",
"name": "organizational_address",
"status": "not_implemented",
"code": "method_evidence_pending",
"message": "Import Python API has no method-level readonly native evidence",
"sourceEntry": "src/Mod/Import/App/SCL_output/config_control_design.py",
"sourceRevision": "4f4e9244e613ea2df06e70027074a562695048cb",
"evidenceSha256": "7b2a2caeca0de8265f64899aea08fde2f86f7f3cf8fef96fca82a657eaf8448d"
}
],
"resources": {
"resourcesReleased": true,
"documentMutation": false
},
"artifacts": {
"wasm": {
"path": "web/public/kernel/FreeCADWebImportRuntimeProbe.wasm",
"sha256": "e7a35e07932d71388e0df8a3bef057a4263aba9af003bc2320074558059dd863"
},
"loader": {
"path": "web/public/kernel/FreeCADWebImportRuntimeProbe.js",
"sha256": "c27b9eb3496b33ddcdaec6dbe6afa2a9d80397c2157eb9cc33f10e7efdc5d37a"
}
},
"boundaries": [
"The selected Import records retain not_implemented because no typed method fixture exists for this family.",
"All statuses and schemas come from compiled FreeCAD through fc_web_dispatch_json; JavaScript only transports and validates the batch envelope."
]
}