Files
Web_FreeCAD_Bitbybit/config/freecad-gui-workflow-plan.json
wangdequan 5bbd7b9d4f
Some checks failed
real-verification / chrome (push) Has been cancelled
real-verification / freecad-oracle (push) Has been cancelled
real-verification / wasm (push) Has been cancelled
feat: advance FreeCAD exact parity evidence
2026-08-14 22:39:16 -04:00

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": []
}
]
}