Fusion - the Fusion 360 Bridge
Public Made by Adomby adom
Drive Autodesk Fusion 360 from the cloud via Adom Bridge: component libraries, IPC package generation, board layout, exports (STEP/Gerbers/BOM/CPL), fast APS cloud search, and parametric modeling.
fusion_capture_library_views false-pass: marks a 3D/component view ok:true with NO chip in the screenshot when a build is mid-flight
From the Adom Bridge web-control library-import test campaign (fusion bridge 1.9.212). Related to #60 (library-import evidence bundle).
Bug
fusion_capture_library_views returns false-pass evidence when a 3D build is still in flight: it marks a view ok:true whose screenshot does NOT contain the expected content, and it captures the wrong editor for other views. The ok flag does not verify that the captured image actually shows the view it claims.
What happened (verified live on crr, 1.9.212)
fusion_build_library_3d is async - it returns immediately with status:"started" and the 3D build continues in the background. I called fusion_capture_library_views {"packages":["TJA1050"]} right after, while the build was still running. It returned:
captured: [
{ package:"TJA1050", view:"component", ok:true, path:".../fusion-TJA1050_component-...bmp" },
{ package:"TJA1050", view:"symbol", ok:false, path:".../fusion-TJA1050_symbol-...bmp" },
{ package:"TJA1050", view:"footprint", ok:false, path:".../fusion-TJA1050_footprint-...bmp" }
]
Then I looked at the actual pixels:
- The
componentview, markedok:true, contained NO 3D chip - just the footprint's pad outlines being built, plus>NAME/>VALUE. A pass flag on a screenshot with no component in it. - The
symbolview (ok:false) actually showed the 3D-package editor (the SOP-8 body), not the schematic symbol - the wrong editor, mislabeled as "symbol".
So the build was holding the 3D-package editor on screen, and capture grabbed that editor for every view regardless of the label, marking one of them ok:true.
What it should do (and the proof the verbs are fine once sequenced)
After the async build actually finished - detectable only because the TJA1050_3d document flipped to isSaved:true in fusion_get_app_state.documents - a re-capture returned all three ok:true with the CORRECT content: the real schematic symbol (pins TXD/GND/VCC/RXD, S/CANH/CANL/VREF), the real 8-pad footprint, and the ganged component view (symbol + footprint + 3D thumbnail, Mapped check). So the verbs work; the defect is purely the missing guard + the unverified ok flag.
Asks
- Guard against capturing mid-build.
fusion_capture_library_viewsshould detect an in-flightfusion_build_library_3dand either wait for it, or refuse with a clearerrorCode(e.g.build_in_progress) - never silently capture the build editor and returnok:true. okmust verify content, not just "a screenshot was saved." Acomponent/3D view with no solid body (only pad outlines), or asymbolview showing the 3D editor, must beok:false. A pass flag that doesn't look at what's in the image is exactly the false-pass class we keep hitting (placeholder-slab 3D, etc.).fusion_build_library_3dneeds a real completion signal. It is async with no way to poll "is the build done?" -fusion_get_app_stateexposes nobuilding/phaseflag; I had to infer completion from a document'sisSavedturning true. Give it a properstatusVerb/progress (this is the same gap #60 asks for: measured progress + a clear done signal so a caller can sequence capture correctly).
Once #1-#3 land, a caller can't accidentally get a "3D chip" screenshot with no chip in it.