237 lines
5.8 KiB
JSON
237 lines
5.8 KiB
JSON
{
|
|
"schema": "freecad-web-full-parity-audit/v1",
|
|
"generatedAt": "2026-09-01",
|
|
"sourceRevision": "2778e3f9c215da48bf0cfd562478d45d624aaa47",
|
|
"truth": "P6 module completed means bounded slice gate; Full Parity remains planned until every audit record has a conclusion.",
|
|
"baseline": {
|
|
"sourceModules": 32,
|
|
"appModules": 24,
|
|
"guiModules": 22,
|
|
"guiOnlyModules": 1,
|
|
"noAppNoGuiModules": 7,
|
|
"objectTypes": 403,
|
|
"objectModules": 18,
|
|
"formatRecords": 236,
|
|
"uniqueFormatExtensions": 21,
|
|
"pythonApiRecords": 13385,
|
|
"pythonApiModules": 29,
|
|
"web": {
|
|
"htmlEntrypoints": 77,
|
|
"workers": 71,
|
|
"facades": 140,
|
|
"nativeProbeSources": 54
|
|
},
|
|
"p6ModuleGatesCompleted": 32
|
|
},
|
|
"moduleStatus": {
|
|
"Assembly": "completed",
|
|
"BIM": "completed",
|
|
"CAM": "completed",
|
|
"Cloud": "completed",
|
|
"Draft": "completed",
|
|
"Fem": "completed",
|
|
"Help": "completed",
|
|
"Import": "completed",
|
|
"Inspection": "completed",
|
|
"JtReader": "completed",
|
|
"Material": "completed",
|
|
"Measure": "completed",
|
|
"Mesh": "completed",
|
|
"MeshPart": "completed",
|
|
"OpenSCAD": "completed",
|
|
"Part": "completed",
|
|
"PartDesign": "completed",
|
|
"Plot": "completed",
|
|
"Points": "completed",
|
|
"ReverseEngineering": "completed",
|
|
"Robot": "completed",
|
|
"Sandbox": "completed",
|
|
"Show": "completed",
|
|
"Sketcher": "completed",
|
|
"Spreadsheet": "completed",
|
|
"Start": "completed",
|
|
"Surface": "completed",
|
|
"TechDraw": "completed",
|
|
"TemplatePyMod": "completed",
|
|
"Test": "completed",
|
|
"Tux": "completed",
|
|
"Web": "completed"
|
|
},
|
|
"formatExtensions": [
|
|
".3mf",
|
|
".amf",
|
|
".ast",
|
|
".brep",
|
|
".brp",
|
|
".csv",
|
|
".dae",
|
|
".dxf",
|
|
".fcstd",
|
|
".ifc",
|
|
".iges",
|
|
".igs",
|
|
".json",
|
|
".obj",
|
|
".off",
|
|
".ply",
|
|
".step",
|
|
".stl",
|
|
".stp",
|
|
".svg",
|
|
".txt"
|
|
],
|
|
"gaps": [
|
|
{
|
|
"id": "FPA-CORE",
|
|
"area": "core-shell",
|
|
"priority": "P0",
|
|
"status": "planned",
|
|
"evidence": [
|
|
"web/src/main.ts",
|
|
"docs/current/FREECAD_WEB_MIGRATION_ANALYSIS.md"
|
|
],
|
|
"scope": "统一 React 工作区、Document actor、命令/错误/取消/进度、树/属性/选择/视图状态。",
|
|
"exit": "FW-P6-FPA-B + FW-P6-FPA-C"
|
|
},
|
|
{
|
|
"id": "FPA-DOC",
|
|
"area": "document-persistence",
|
|
"priority": "P0",
|
|
"status": "planned",
|
|
"evidence": [
|
|
"docs/p6/sketcher-action-04-kernel.json",
|
|
"docs/p6/techdraw-action-05-persistence-native.json"
|
|
],
|
|
"scope": "多对象图、跨模块链接、属性、重算、FCStd、Undo/Redo、事务和恢复。",
|
|
"exit": "FW-P6-FPA-C"
|
|
},
|
|
{
|
|
"id": "FPA-OBJ",
|
|
"area": "object-coverage",
|
|
"priority": "P0",
|
|
"status": "planned",
|
|
"count": 403,
|
|
"evidence": [
|
|
"docs/object-inventory.json",
|
|
"docs/web-parity-matrix.json"
|
|
],
|
|
"scope": "逐对象 native create/recompute/inspect/property/view/persistence 适用性。",
|
|
"exit": "FW-P6-FPA-D"
|
|
},
|
|
{
|
|
"id": "FPA-FMT",
|
|
"area": "format-coverage",
|
|
"priority": "P0",
|
|
"status": "planned",
|
|
"count": 236,
|
|
"evidence": [
|
|
"docs/format-api-inventory.json"
|
|
],
|
|
"scope": "逐记录 handler、参数、错误、恢复、互操作和浏览器回放。",
|
|
"exit": "FW-P6-FPA-E"
|
|
},
|
|
{
|
|
"id": "FPA-PY",
|
|
"area": "python-api",
|
|
"priority": "P0",
|
|
"status": "planned",
|
|
"count": 13385,
|
|
"evidence": [
|
|
"docs/format-api-inventory.json",
|
|
"docs/current/FREECAD_WEB_MIGRATION_ANALYSIS.md"
|
|
],
|
|
"scope": "完整 API 分类、binding、权限、参数/返回值、错误和受限执行。",
|
|
"exit": "FW-P6-FPA-F"
|
|
},
|
|
{
|
|
"id": "FPA-GUI",
|
|
"area": "workbench-gui",
|
|
"priority": "P0",
|
|
"status": "planned",
|
|
"count": 22,
|
|
"evidence": [
|
|
"docs/workbench-inventory.json",
|
|
"freecad-source/src/Gui"
|
|
],
|
|
"scope": "32 模块、22 GUI 模块的命令、任务面板、资源、选择和视图行为。",
|
|
"exit": "FW-P6-FPA-G"
|
|
},
|
|
{
|
|
"id": "FPA-UX",
|
|
"area": "rendering-interaction",
|
|
"priority": "P1",
|
|
"status": "planned",
|
|
"evidence": [
|
|
"web/src/main.ts",
|
|
"web/package.json"
|
|
],
|
|
"scope": "Three.js 渲染、选择/预选、相机、标准视图、属性编辑、快捷键、响应式和可访问性。",
|
|
"exit": "FW-P6-FPA-H"
|
|
},
|
|
{
|
|
"id": "FPA-QUAL",
|
|
"area": "quality-release",
|
|
"priority": "P1",
|
|
"status": "planned",
|
|
"evidence": [
|
|
"docs/current/FREECAD_WEB_MIGRATION_ANALYSIS.md",
|
|
"tools/run_p6_chrome_harness.mjs"
|
|
],
|
|
"scope": "性能、内存、CSP/权限、无障碍、兼容性和发布 gate。",
|
|
"exit": "FW-P6-FPA-I"
|
|
}
|
|
],
|
|
"roadmap": [
|
|
{
|
|
"task": "FW-P6-FPA-A",
|
|
"area": "audit",
|
|
"status": "in_progress"
|
|
},
|
|
{
|
|
"task": "FW-P6-FPA-B",
|
|
"area": "core-shell",
|
|
"status": "planned"
|
|
},
|
|
{
|
|
"task": "FW-P6-FPA-C",
|
|
"area": "document-persistence",
|
|
"status": "planned"
|
|
},
|
|
{
|
|
"task": "FW-P6-FPA-D",
|
|
"area": "object-coverage",
|
|
"status": "planned"
|
|
},
|
|
{
|
|
"task": "FW-P6-FPA-E",
|
|
"area": "format-coverage",
|
|
"status": "planned"
|
|
},
|
|
{
|
|
"task": "FW-P6-FPA-F",
|
|
"area": "python-api",
|
|
"status": "planned"
|
|
},
|
|
{
|
|
"task": "FW-P6-FPA-G",
|
|
"area": "workbench-gui",
|
|
"status": "planned"
|
|
},
|
|
{
|
|
"task": "FW-P6-FPA-H",
|
|
"area": "rendering-interaction",
|
|
"status": "planned"
|
|
},
|
|
{
|
|
"task": "FW-P6-FPA-I",
|
|
"area": "quality-release",
|
|
"status": "planned"
|
|
},
|
|
{
|
|
"task": "FW-P6-FPA-Y",
|
|
"area": "full-parity-gate",
|
|
"status": "planned"
|
|
}
|
|
]
|
|
}
|