111 lines
3.6 KiB
JSON
111 lines
3.6 KiB
JSON
{
|
|
"schemaVersion": 1,
|
|
"baseline": {
|
|
"freecadVersion": "1.1.1",
|
|
"commit": "0108fd4b4850cc46e625b60e53cea7a7bbe69f8d"
|
|
},
|
|
"selectedAt": "2026-08-14",
|
|
"family": {
|
|
"id": "partdesign-pad-task",
|
|
"title": "Part Design Pad task lifecycle",
|
|
"workbench": "PartDesignWorkbench",
|
|
"primaryCommand": "PartDesign_Pad",
|
|
"commandIds": [
|
|
"PartDesign_Pad"
|
|
],
|
|
"primaryExactTask": "EX-UI-03",
|
|
"relatedExactTasks": [
|
|
"EX-ORA-01",
|
|
"EX-PD-01"
|
|
],
|
|
"selectionReason": "Pad is a P0 profile feature with existing native geometry, failure, history, naming and FCStd evidence. Its GUI command is document-sensitive, opens a parameter Task panel, supports preview and cancel, and can exercise success, disabled, failure and recovery without introducing a new workbench scope."
|
|
},
|
|
"sensitivityEvidence": {
|
|
"source": "config/freecad-gui-command-inventory.json",
|
|
"commandId": "PartDesign_Pad",
|
|
"documentSensitive": true,
|
|
"selectionSensitive": false,
|
|
"cases": {
|
|
"noDocument": [
|
|
false
|
|
],
|
|
"documentNoSelection": [
|
|
true
|
|
],
|
|
"selectedPartBox": [
|
|
true
|
|
]
|
|
}
|
|
},
|
|
"stateRecipes": {
|
|
"success": {
|
|
"setup": "Create a document, Body and closed rectangular Sketch; select the Sketch and invoke PartDesign_Pad.",
|
|
"action": "Set Length to 10 mm and accept the Task.",
|
|
"expected": "A Pad is committed as Body Tip, the transaction is undoable and the document recomputes valid."
|
|
},
|
|
"disabled": {
|
|
"setup": "Start the Part Design workbench with no active document.",
|
|
"action": "Query PartDesign_Pad command state without invoking it.",
|
|
"expected": "The command is inactive and no document, Task or transaction is created."
|
|
},
|
|
"failure": {
|
|
"setup": "Create an active Body with an invalid open-wire Sketch selected.",
|
|
"action": "Invoke PartDesign_Pad and attempt to accept the Task.",
|
|
"expected": "The native diagnostic is captured, no invalid Pad is committed and the last valid document state is retained."
|
|
},
|
|
"cancel": {
|
|
"setup": "Create an active Body with a valid closed Sketch and open PartDesign_Pad.",
|
|
"action": "Change Length, observe preview, then cancel the Task.",
|
|
"expected": "Preview state is discarded, no Pad is committed and selection, active Body and focus return to their pre-command state."
|
|
},
|
|
"recovery": {
|
|
"setup": "Continue from the failed or cancelled Pad workflow in the same document.",
|
|
"action": "Repair the profile or reopen Pad, enter a valid Length and accept; then undo and redo once.",
|
|
"expected": "The valid Pad is committed, Body Tip and Shape recover, undo/redo are stable and save-reopen preserves the result."
|
|
}
|
|
},
|
|
"progress": [
|
|
{
|
|
"taskId": "ORA-GUI-WF-000",
|
|
"status": "completed",
|
|
"evidence": [
|
|
"config/freecad-gui-workflow-plan.json",
|
|
"config/freecad-gui-command-inventory.json"
|
|
]
|
|
},
|
|
{
|
|
"taskId": "ORA-GUI-WF-001",
|
|
"status": "completed",
|
|
"evidence": [
|
|
"config/freecad-gui-workflow-oracle.json",
|
|
"scripts/check-freecad-gui-workflow-oracle.mjs"
|
|
]
|
|
},
|
|
{
|
|
"taskId": "ORA-GUI-WF-002",
|
|
"status": "in_progress",
|
|
"evidence": []
|
|
},
|
|
{
|
|
"taskId": "ORA-GUI-WF-003",
|
|
"status": "pending",
|
|
"evidence": []
|
|
},
|
|
{
|
|
"taskId": "ORA-GUI-WF-004",
|
|
"status": "pending",
|
|
"evidence": []
|
|
},
|
|
{
|
|
"taskId": "ORA-GUI-WF-005",
|
|
"status": "pending",
|
|
"evidence": []
|
|
},
|
|
{
|
|
"taskId": "ORA-GUI-WF-006",
|
|
"status": "pending",
|
|
"evidence": []
|
|
}
|
|
]
|
|
}
|