feat: establish reproducible FreeCAD web compatibility baseline
This commit is contained in:
594
config/freecad-sketcher-constraint-oracle.json
Normal file
594
config/freecad-sketcher-constraint-oracle.json
Normal file
@@ -0,0 +1,594 @@
|
||||
{
|
||||
"baselineId": "freecad-1.1.1-sketcher-constraint-oracle",
|
||||
"classificationCases": [
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintTypes": [
|
||||
"Horizontal",
|
||||
"Distance"
|
||||
],
|
||||
"degreesOfFreedom": 3,
|
||||
"driving": false,
|
||||
"expected": "reference",
|
||||
"fullyConstrained": false,
|
||||
"id": "reference-dimension",
|
||||
"inputValue": 99,
|
||||
"malformed": [],
|
||||
"measuredValue": 77.98445020149762,
|
||||
"observed": "reference",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintTypes": [
|
||||
"Distance",
|
||||
"Distance"
|
||||
],
|
||||
"degreesOfFreedom": 3,
|
||||
"expected": "redundant",
|
||||
"fullyConstrained": false,
|
||||
"id": "redundant-dimension",
|
||||
"malformed": [],
|
||||
"observed": "redundant",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [
|
||||
2
|
||||
],
|
||||
"solveStatus": -2,
|
||||
"values": [
|
||||
5,
|
||||
5
|
||||
]
|
||||
},
|
||||
{
|
||||
"conflicting": [
|
||||
1,
|
||||
2
|
||||
],
|
||||
"constraintTypes": [
|
||||
"Distance",
|
||||
"Distance"
|
||||
],
|
||||
"degreesOfFreedom": 3,
|
||||
"expected": "conflicting",
|
||||
"fullyConstrained": false,
|
||||
"id": "conflicting-dimension",
|
||||
"malformed": [],
|
||||
"observed": "conflicting",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"solveStatus": -3,
|
||||
"values": [
|
||||
5,
|
||||
8
|
||||
]
|
||||
}
|
||||
],
|
||||
"failureCases": [
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "Coincident",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "coincident-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "Horizontal",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "horizontal-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "Vertical",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "vertical-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "Parallel",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "parallel-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "Tangent",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "tangent-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "Distance",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "distance-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "DistanceX",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "distance-x-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "DistanceY",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "distance-y-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "Angle",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "angle-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "Perpendicular",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "perpendicular-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "Radius",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "radius-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "Equal",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "equal-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "PointOnObject",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "point-on-object-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "Symmetric",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "symmetric-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "InternalAlignment",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "internal-alignment-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "SnellsLaw",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "snells-law-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "Block",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "block-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "Diameter",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "diameter-invalid-reference",
|
||||
"observed": "failure"
|
||||
},
|
||||
{
|
||||
"addResult": null,
|
||||
"constraintType": "Weight",
|
||||
"error": "Constraint has invalid indexes",
|
||||
"errorType": "IndexError",
|
||||
"expected": "failure",
|
||||
"id": "weight-invalid-reference",
|
||||
"observed": "failure"
|
||||
}
|
||||
],
|
||||
"freecadVersion": "1.1.1",
|
||||
"gitCommit": "0108fd4b4850cc46e625b60e53cea7a7bbe69f8d",
|
||||
"revision": "14556 (Git)",
|
||||
"schemaVersion": 1,
|
||||
"status": "pass",
|
||||
"successCases": [
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "Coincident",
|
||||
"constraintTypes": [
|
||||
"Coincident"
|
||||
],
|
||||
"degreesOfFreedom": 6,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "coincident-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "Horizontal",
|
||||
"constraintTypes": [
|
||||
"Horizontal"
|
||||
],
|
||||
"degreesOfFreedom": 3,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "horizontal-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "Vertical",
|
||||
"constraintTypes": [
|
||||
"Vertical"
|
||||
],
|
||||
"degreesOfFreedom": 3,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "vertical-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "Parallel",
|
||||
"constraintTypes": [
|
||||
"Parallel"
|
||||
],
|
||||
"degreesOfFreedom": 7,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "parallel-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "Tangent",
|
||||
"constraintTypes": [
|
||||
"Tangent"
|
||||
],
|
||||
"degreesOfFreedom": 5,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "tangent-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": -2.220446049250313e-16,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "Distance",
|
||||
"constraintTypes": [
|
||||
"Distance"
|
||||
],
|
||||
"degreesOfFreedom": 3,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "distance-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "DistanceX",
|
||||
"constraintTypes": [
|
||||
"DistanceX"
|
||||
],
|
||||
"degreesOfFreedom": 3,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "distance-x-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "DistanceY",
|
||||
"constraintTypes": [
|
||||
"DistanceY"
|
||||
],
|
||||
"degreesOfFreedom": 3,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "distance-y-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "Angle",
|
||||
"constraintTypes": [
|
||||
"Angle"
|
||||
],
|
||||
"degreesOfFreedom": 3,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "angle-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "Perpendicular",
|
||||
"constraintTypes": [
|
||||
"Perpendicular"
|
||||
],
|
||||
"degreesOfFreedom": 7,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "perpendicular-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "Radius",
|
||||
"constraintTypes": [
|
||||
"Radius"
|
||||
],
|
||||
"degreesOfFreedom": 2,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "radius-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "Equal",
|
||||
"constraintTypes": [
|
||||
"Equal"
|
||||
],
|
||||
"degreesOfFreedom": 7,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "equal-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "PointOnObject",
|
||||
"constraintTypes": [
|
||||
"PointOnObject"
|
||||
],
|
||||
"degreesOfFreedom": 5,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "point-on-object-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": -1.1102230246251565e-16,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "Symmetric",
|
||||
"constraintTypes": [
|
||||
"Symmetric"
|
||||
],
|
||||
"degreesOfFreedom": 4,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "symmetric-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 1.1102230246251565e-16,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "InternalAlignment",
|
||||
"constraintTypes": [
|
||||
"InternalAlignment",
|
||||
"InternalAlignment",
|
||||
"InternalAlignment",
|
||||
"InternalAlignment"
|
||||
],
|
||||
"degreesOfFreedom": 5,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "internal-alignment-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "SnellsLaw",
|
||||
"constraintTypes": [
|
||||
"Coincident",
|
||||
"PointOnObject",
|
||||
"SnellsLaw"
|
||||
],
|
||||
"degreesOfFreedom": 8,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "snells-law-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "Block",
|
||||
"constraintTypes": [
|
||||
"Block"
|
||||
],
|
||||
"degreesOfFreedom": 0,
|
||||
"expected": "success",
|
||||
"fullyConstrained": true,
|
||||
"id": "block-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "Diameter",
|
||||
"constraintTypes": [
|
||||
"Diameter"
|
||||
],
|
||||
"degreesOfFreedom": 2,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "diameter-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
},
|
||||
{
|
||||
"conflicting": [],
|
||||
"constraintType": "Weight",
|
||||
"constraintTypes": [
|
||||
"InternalAlignment",
|
||||
"Weight",
|
||||
"InternalAlignment",
|
||||
"InternalAlignment",
|
||||
"InternalAlignment",
|
||||
"Equal",
|
||||
"InternalAlignment",
|
||||
"InternalAlignment"
|
||||
],
|
||||
"degreesOfFreedom": 10,
|
||||
"expected": "success",
|
||||
"fullyConstrained": false,
|
||||
"id": "weight-success",
|
||||
"malformed": [],
|
||||
"observed": "success",
|
||||
"partiallyRedundant": [],
|
||||
"redundant": [],
|
||||
"residual": 0,
|
||||
"solveStatus": 0
|
||||
}
|
||||
],
|
||||
"summary": {
|
||||
"classificationCases": 3,
|
||||
"classificationPassed": 3,
|
||||
"constraintTypes": 19,
|
||||
"failureCases": 19,
|
||||
"failurePassed": 19,
|
||||
"successCases": 19,
|
||||
"successPassed": 19
|
||||
},
|
||||
"tolerance": 1e-7
|
||||
}
|
||||
Reference in New Issue
Block a user