Files
FreeCADWasmDev/docs/p6/inspection-action-02-facade.schema.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

19 lines
3.8 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://freecad.org/schemas/freecad-web-inspection-inspect-source-inventory-v1.json",
"oneOf": [
{ "$ref": "#/$defs/request" },
{ "$ref": "#/$defs/cancel" },
{ "$ref": "#/$defs/result" },
{ "$ref": "#/$defs/error" }
],
"$defs": {
"request": { "type": "object", "required": ["schema", "version", "kind", "requestId", "command", "payload"], "properties": { "schema": { "const": "freecad-web-facade/v1" }, "version": { "const": 1 }, "kind": { "const": "request" }, "requestId": { "type": "string", "minLength": 1 }, "command": { "const": "inspection.inspectSourceInventory" }, "payload": { "$ref": "#/$defs/payload" }, "documentId": { "const": "inspection-inspect-doc" } }, "additionalProperties": false },
"cancel": { "type": "object", "required": ["schema", "version", "kind", "requestId", "cancelOf"], "properties": { "schema": { "const": "freecad-web-facade/v1" }, "version": { "const": 1 }, "kind": { "const": "cancel" }, "requestId": { "type": "string", "minLength": 1 }, "cancelOf": { "type": "string", "minLength": 1 }, "documentId": { "const": "inspection-inspect-doc" } }, "additionalProperties": false },
"payload": { "type": "object", "required": ["schema", "module", "action", "sourceRevision", "entry"], "properties": { "schema": { "const": "freecad-web-inspection/inspect-source-inventory/v1" }, "module": { "const": "Inspection" }, "action": { "const": "inspect/source-inventory" }, "sourceRevision": { "type": "string", "minLength": 1 }, "entry": { "const": "src/Mod/Inspection/App/AppInspection.cpp" } }, "additionalProperties": false },
"typedResult": { "type": "object", "required": ["schema", "module", "action", "sourceRevision", "currentSourceRevision", "sourceEntry", "registeredTypes", "actualTypes", "nominalTypes", "resultProperty", "dependencies", "guiExcluded", "readOnly", "stateSha256"], "properties": { "schema": { "const": "freecad-web-inspection/inspect-source-inventory/v1" }, "module": { "const": "Inspection" }, "action": { "const": "inspect/source-inventory" }, "sourceRevision": { "type": "string", "minLength": 1 }, "currentSourceRevision": { "const": "4f4e9244e613ea2df06e70027074a562695048cb" }, "sourceEntry": { "const": "src/Mod/Inspection/App/AppInspection.cpp" }, "registeredTypes": { "type": "array", "minItems": 3, "maxItems": 3, "items": { "type": "string" } }, "actualTypes": { "type": "array", "const": ["Mesh::Feature", "Points::Feature", "Part::Feature"] }, "nominalTypes": { "type": "array", "const": ["Mesh::Feature", "Points::Feature", "Part::Feature"] }, "resultProperty": { "const": "Inspection::PropertyDistanceList" }, "dependencies": { "type": "array", "const": ["FreeCADApp", "Mesh", "Points", "Part"] }, "guiExcluded": { "type": "array", "const": ["InspectionGui", "FreeCADGui", "PySide", "pivy.coin"] }, "readOnly": { "const": true }, "stateSha256": { "type": "string", "minLength": 1 } }, "additionalProperties": false },
"result": { "type": "object", "required": ["schema", "version", "kind", "requestId", "result"], "properties": { "schema": { "const": "freecad-web-facade/v1" }, "version": { "const": 1 }, "kind": { "const": "result" }, "requestId": { "type": "string", "minLength": 1 }, "result": { "$ref": "#/$defs/typedResult" } }, "additionalProperties": false },
"error": { "type": "object", "required": ["schema", "version", "kind", "requestId", "error"], "properties": { "schema": { "const": "freecad-web-facade/v1" }, "version": { "const": 1 }, "kind": { "const": "error" }, "requestId": { "type": "string", "minLength": 1 }, "error": { "type": "object", "required": ["code", "message"], "properties": { "code": { "type": "string", "minLength": 1 }, "message": { "type": "string", "minLength": 1 }, "diagnostic": { "type": "object" } }, "additionalProperties": false } }, "additionalProperties": false }
}
}