Files
FreeCADWasmDev/docs/web-parity-matrix.md
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

41 lines
5.4 KiB
Markdown

# FreeCAD Web Parity Matrix
- Source revision: `2778e3f9c215da48bf0cfd562478d45d624aaa47`
- Module rows: `32`
- Web status is projected from the task-state ledger; `pending` means no complete module gate exists.
| Module | User actions | Objects | Formats | Python API | GUI | Web status | Regression entry |
|---|---|---:|---|---:|---:|---|---|
| `Assembly` | create/recompute, inspect/source-inventory, python-api, save/reopen | 8 | `.fcstd` | 552 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `BIM` | import/export, inspect/source-inventory, python-api | 0 | `.brp`, `.dae`, `.dxf`, `.fcstd`, `.ifc`, `.json`, `.obj`, `.stp`, `.svg` | 2366 | no | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `CAM` | create/recompute, import/export, inspect/source-inventory, python-api, save/reopen | 12 | `.fcstd`, `.json`, `.obj`, `.step`, `.svg` | 2883 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Cloud` | create/recompute, inspect/source-inventory, python-api, save/reopen | 0 | - | 3 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Draft` | create/recompute, inspect/source-inventory, python-api, save/reopen | 0 | `.dxf`, `.obj`, `.svg` | 2043 | no | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Fem` | create/recompute, inspect/source-inventory, python-api, save/reopen | 53 | `.brep`, `.json`, `.obj`, `.svg`, `.txt` | 1305 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Help` | inspect/source-inventory, python-api | 0 | - | 14 | no | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Import` | create/recompute, import/export, inspect/source-inventory, python-api, save/reopen | 2 | `.ifc`, `.igs`, `.obj`, `.step`, `.stp` | 1135 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Inspection` | create/recompute, inspect/source-inventory, python-api, save/reopen | 3 | - | 3 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `JtReader` | create/recompute, inspect/source-inventory, save/reopen | 1 | - | 0 | no | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Material` | create/recompute, inspect/source-inventory, python-api, save/reopen | 22 | - | 178 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Measure` | create/recompute, inspect/source-inventory, python-api, save/reopen | 11 | - | 31 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Mesh` | create/recompute, import/export, inspect/source-inventory, python-api, save/reopen | 31 | `.3mf`, `.amf`, `.ast`, `.obj`, `.off`, `.ply`, `.stl` | 211 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `MeshPart` | create/recompute, inspect/source-inventory, python-api, save/reopen | 0 | - | 13 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `OpenSCAD` | inspect/source-inventory, python-api | 0 | `.dxf` | 294 | no | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Part` | create/recompute, import/export, inspect/source-inventory, python-api, save/reopen | 116 | `.brep`, `.brp`, `.fcstd`, `.iges`, `.igs`, `.obj`, `.step`, `.stp`, `.svg` | 1191 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `PartDesign` | create/recompute, inspect/source-inventory, python-api, save/reopen | 65 | - | 238 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Plot` | inspect/source-inventory, python-api | 0 | - | 28 | no | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Points` | create/recompute, inspect/source-inventory, python-api, save/reopen | 8 | `.obj`, `.ply` | 12 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `ReverseEngineering` | create/recompute, inspect/source-inventory, python-api, save/reopen | 0 | - | 3 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Robot` | create/recompute, inspect/source-inventory, python-api, save/reopen | 6 | - | 16 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Sandbox` | create/recompute, inspect/source-inventory, python-api, save/reopen | 2 | `.ast`, `.obj`, `.stl` | 30 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Show` | inspect/source-inventory, python-api | 0 | - | 104 | no | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Sketcher` | create/recompute, inspect/source-inventory, python-api, save/reopen | 10 | - | 141 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Spreadsheet` | create/recompute, inspect/source-inventory, python-api, save/reopen | 5 | `.csv` | 63 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Start` | create/recompute, inspect/source-inventory, python-api, save/reopen | 0 | `.fcstd`, `.svg` | 2 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Surface` | create/recompute, inspect/source-inventory, python-api, save/reopen | 7 | - | 10 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `TechDraw` | create/recompute, import/export, inspect/source-inventory, python-api, save/reopen | 41 | `.dxf`, `.svg` | 247 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `TemplatePyMod` | inspect/source-inventory, python-api | 0 | - | 244 | no | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Test` | inspect/source-inventory | 0 | `.fcstd`, `.obj` | 0 | yes | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Tux` | inspect/source-inventory, python-api | 0 | - | 25 | no | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |
| `Web` | create/recompute, inspect/source-inventory, save/reopen | 0 | - | 0 | no | `completed` | `FreeCAD/docs/tasks/FW-P3-001B.md` |