{ "schema": "freecad-web-p6-python-api-pure-gate/v1", "taskId": "FW-P6-FPA-F2", "result": "pass_with_pending", "coverage": { "pureTierRecords": 6418, "exposedPureRecords": 96, "plannedRecords": 2211, "restrictedRecords": 1484, "totalRecords": 13386 }, "byModule": { "OpenSCAD": 10, "Part": 7, "Plot": 15, "Show": 43, "Sketcher": 2, "TechDraw": 3, "TemplatePyMod": 16 }, "records": [ { "id": "py:OpenSCAD:function:call_openscad_with_pipes", "module": "OpenSCAD", "name": "call_openscad_with_pipes", "artifacts": [ "docs/p6/openscad-tier2-pure-family-runtime.json" ] }, { "id": "py:OpenSCAD:function:callopenscad", "module": "OpenSCAD", "name": "callopenscad", "artifacts": [ "docs/p6/openscad-tier2-pure-family-runtime.json" ] }, { "id": "py:OpenSCAD:function:callopenscadmeshstring", "module": "OpenSCAD", "name": "callopenscadmeshstring", "artifacts": [ "docs/p6/openscad-tier2-pure-family-runtime.json" ] }, { "id": "py:OpenSCAD:function:callopenscadstring", "module": "OpenSCAD", "name": "callopenscadstring", "artifacts": [ "docs/p6/openscad-tier2-pure-family-runtime.json" ] }, { "id": "py:OpenSCAD:function:getopenscadexe", "module": "OpenSCAD", "name": "getopenscadexe", "artifacts": [ "docs/p6/openscad-tier2-pure-family-runtime.json" ] }, { "id": "py:OpenSCAD:function:getopenscadversion", "module": "OpenSCAD", "name": "getopenscadversion", "artifacts": [ "docs/p6/openscad-tier2-pure-family-runtime.json" ] }, { "id": "py:OpenSCAD:function:meshopinline", "module": "OpenSCAD", "name": "meshopinline", "artifacts": [ "docs/p6/openscad-tier2-pure-family-runtime.json" ] }, { "id": "py:OpenSCAD:function:meshoponobjs", "module": "OpenSCAD", "name": "meshoponobjs", "artifacts": [ "docs/p6/openscad-tier2-pure-family-runtime.json" ] }, { "id": "py:OpenSCAD:function:meshoptempfile", "module": "OpenSCAD", "name": "meshoptempfile", "artifacts": [ "docs/p6/openscad-tier2-pure-family-runtime.json" ] }, { "id": "py:OpenSCAD:function:searchforopenscadexe", "module": "OpenSCAD", "name": "searchforopenscadexe", "artifacts": [ "docs/p6/openscad-tier2-pure-family-runtime.json" ] }, { "id": "py:Part:function:PlacementsFuzzyCompare", "module": "Part", "name": "PlacementsFuzzyCompare", "artifacts": [ "docs/p6/part-python-method-runtime.json" ] }, { "id": "py:Part:function:addTube", "module": "Part", "name": "addTube", "artifacts": [ "docs/p6/part-python-method-runtime.json" ] }, { "id": "py:Part:function:dimensionOfShapes", "module": "Part", "name": "dimensionOfShapes", "artifacts": [ "docs/p6/part-python-method-runtime.json" ] }, { "id": "py:Part:function:makeBox", "module": "Part", "name": "makeBox", "artifacts": [ "docs/p6/part-make-box-method-runtime.json" ] }, { "id": "py:Part:function:makeTube", "module": "Part", "name": "makeTube", "artifacts": [ "docs/p6/part-python-method-runtime.json" ] }, { "id": "py:Part:function:roundVector", "module": "Part", "name": "roundVector", "artifacts": [ "docs/p6/part-python-method-runtime.json" ] }, { "id": "py:Part:function:shapeOfMaxVol", "module": "Part", "name": "shapeOfMaxVol", "artifacts": [ "docs/p6/part-shape-max-vol-method-runtime.json" ] }, { "id": "py:Plot:function:addNewAxes", "module": "Plot", "name": "addNewAxes", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Plot:function:axes", "module": "Plot", "name": "axes", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Plot:function:axesList", "module": "Plot", "name": "axesList", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Plot:function:closePlot", "module": "Plot", "name": "closePlot", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Plot:function:figure", "module": "Plot", "name": "figure", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Plot:function:getMainWindow", "module": "Plot", "name": "getMainWindow", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Plot:function:getMdiArea", "module": "Plot", "name": "getMdiArea", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Plot:function:getPlot", "module": "Plot", "name": "getPlot", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Plot:function:grid", "module": "Plot", "name": "grid", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Plot:function:legend", "module": "Plot", "name": "legend", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Plot:function:plot", "module": "Plot", "name": "plot", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Plot:function:removeSerie", "module": "Plot", "name": "removeSerie", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Plot:function:series", "module": "Plot", "name": "series", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Plot:function:title", "module": "Plot", "name": "title", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Plot:method:Plot.update", "module": "Plot", "name": "Plot.update", "artifacts": [ "docs/p6/plot-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:function:CSChain", "module": "Show", "name": "CSChain", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:function:ContainerChain", "module": "Show", "name": "ContainerChain", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:function:ContainerOf", "module": "Show", "name": "ContainerOf", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:function:clipPlane", "module": "Show", "name": "clipPlane", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:function:getAllDependencies", "module": "Show", "name": "getAllDependencies", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:function:getAllDependent", "module": "Show", "name": "getAllDependent", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:function:getClipPlaneNode", "module": "Show", "name": "getClipPlaneNode", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:function:getPickStyle", "module": "Show", "name": "getPickStyle", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:function:getPickStyleNode", "module": "Show", "name": "getPickStyleNode", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:function:isAContainer", "module": "Show", "name": "isAContainer", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:function:mainStack", "module": "Show", "name": "mainStack", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:function:placement2plane", "module": "Show", "name": "placement2plane", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:function:setPickStyle", "module": "Show", "name": "setPickStyle", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:Container.self_check", "module": "Show", "name": "Container.self_check", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:ObjectClipPlane.apply_data", "module": "Show", "name": "ObjectClipPlane.apply_data", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:ObjectClipPlane.val", "module": "Show", "name": "ObjectClipPlane.val", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:Pickability.apply_data", "module": "Show", "name": "Pickability.apply_data", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:SceneDetail.apply_data", "module": "Show", "name": "SceneDetail.apply_data", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:SceneDetail.full_key", "module": "Show", "name": "SceneDetail.full_key", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:SceneDetail.set_doc", "module": "Show", "name": "SceneDetail.set_doc", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TVObserver.stop", "module": "Show", "name": "TVObserver.stop", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TVStack.byTag", "module": "Show", "name": "TVStack.byTag", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TVStack.dissolve", "module": "Show", "name": "TVStack.dissolve", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TVStack.insert", "module": "Show", "name": "TVStack.insert", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TVStack.purge_dead", "module": "Show", "name": "TVStack.purge_dead", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TVStack.rebuild_index", "module": "Show", "name": "TVStack.rebuild_index", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TVStack.rewindAfterSaving", "module": "Show", "name": "TVStack.rewindAfterSaving", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TVStack.unwindForSaving", "module": "Show", "name": "TVStack.unwindForSaving", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TVStack.withdraw", "module": "Show", "name": "TVStack.withdraw", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TempoVis.clipPlane", "module": "Show", "name": "TempoVis.clipPlane", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TempoVis.forget", "module": "Show", "name": "TempoVis.forget", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TempoVis.forgetDetail", "module": "Show", "name": "TempoVis.forgetDetail", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TempoVis.hide", "module": "Show", "name": "TempoVis.hide", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TempoVis.hide_all_dependencies", "module": "Show", "name": "TempoVis.hide_all_dependencies", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TempoVis.hide_all_dependent", "module": "Show", "name": "TempoVis.hide_all_dependent", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TempoVis.modify", "module": "Show", "name": "TempoVis.modify", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TempoVis.setUnpickable", "module": "Show", "name": "TempoVis.setUnpickable", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TempoVis.show", "module": "Show", "name": "TempoVis.show", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TempoVis.show_all_dependencies", "module": "Show", "name": "TempoVis.show_all_dependencies", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TempoVis.show_all_dependent", "module": "Show", "name": "TempoVis.show_all_dependent", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TempoVis.sketchClipPlane", "module": "Show", "name": "TempoVis.sketchClipPlane", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:TempoVis.stored_val", "module": "Show", "name": "TempoVis.stored_val", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Show:method:VProperty.apply_data", "module": "Show", "name": "VProperty.apply_data", "artifacts": [ "docs/p6/show-tier2-pure-family-runtime.json" ] }, { "id": "py:Sketcher:function:isProfileActive", "module": "Sketcher", "name": "isProfileActive", "artifacts": [ "docs/p6/sketcher-profile-method-runtime.json" ] }, { "id": "py:Sketcher:function:makeHexagonSimple", "module": "Sketcher", "name": "makeHexagonSimple", "artifacts": [ "docs/p6/sketcher-hexagon-method-runtime.json" ] }, { "id": "py:TechDraw:function:DLeaderTest", "module": "TechDraw", "name": "DLeaderTest", "artifacts": [ "docs/p6/techdraw-tier2-pure-family-runtime.json" ] }, { "id": "py:TechDraw:function:TDPyTest", "module": "TechDraw", "name": "TDPyTest", "artifacts": [ "docs/p6/techdraw-tier2-pure-family-runtime.json" ] }, { "id": "py:TechDraw:function:createPageWithSVGTemplate", "module": "TechDraw", "name": "createPageWithSVGTemplate", "artifacts": [ "docs/p6/techdraw-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:PlaceBox", "module": "TemplatePyMod", "name": "PlaceBox", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:Sierpinski", "module": "TemplatePyMod", "name": "Sierpinski", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:makeBox", "module": "TemplatePyMod", "name": "makeBox", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:makeCircleSet", "module": "TemplatePyMod", "name": "makeCircleSet", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:makeDistanceBolt", "module": "TemplatePyMod", "name": "makeDistanceBolt", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:makeEnumTest", "module": "TemplatePyMod", "name": "makeEnumTest", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:makeLine", "module": "TemplatePyMod", "name": "makeLine", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:makeMengerSponge", "module": "TemplatePyMod", "name": "makeMengerSponge", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:makeMengerSponge_mt", "module": "TemplatePyMod", "name": "makeMengerSponge_mt", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:makeMesh", "module": "TemplatePyMod", "name": "makeMesh", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:makeMolecule", "module": "TemplatePyMod", "name": "makeMolecule", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:makeOctahedron", "module": "TemplatePyMod", "name": "makeOctahedron", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:makePoints", "module": "TemplatePyMod", "name": "makePoints", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:makeSnapshotWithGui", "module": "TemplatePyMod", "name": "makeSnapshotWithGui", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:makeSnapshotWithoutGui", "module": "TemplatePyMod", "name": "makeSnapshotWithoutGui", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] }, { "id": "py:TemplatePyMod:function:makeTexture", "module": "TemplatePyMod", "name": "makeTexture", "artifacts": [ "docs/p6/templatepymod-tier2-pure-family-runtime.json" ] } ], "manifestSha256": "91d45d745f0b5a89c23e20c5dd5b4fd65d1950baceb3df81e7c38a6bace80861", "boundaries": [ "Only passing native Python API artifacts are used; external OpenSCAD process calls remain subject to capability policy.", "Pure-tier records without native evidence remain planned and are not implied by this partial gate." ] }