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.
prove cannot resolve the urn bind just minted: 'Could not open the bound f3d (no urn)' -> library_not_proven on a good library
prove cannot see the urn that bind just minted, so a good library reports library_not_proven
The four-frame proof set is working and enforced - this is a defect inside it, not a complaint about it.
Measured, one run, tja1051t-3-118 (fusion-bridge 1.9.120)
fusion_create_library {libraryPath, stepPath} -> started
fusion_prove_result:
bind: { success: true,
wip_urn: "urn:adsk.wipprod:fs.file:vf.nNCUpisoRnyLwDw5rZrs9Q?version=1" }
prove.evidence:
{ step:"symbol", view:"symbol-editor", ok:true }
{ step:"footprint", view:"footprint-editor", ok:true }
{ step:"package3d", view:"3d-editor", ok:FALSE,
error:"Could not open the bound f3d (no urn): None" } <-- here
{ step:"ganged", view:"library-manager", ok:true }
imagesCaptured: 3 / 4
proven: false, errorCode: "library_not_proven"
missing: ["thumbnail(not_found)"]
artifacts.package3d: { present: true, names:["TJA1051T_3,118"], thumbnail:"not_found" }
bind reports success WITH a urn. The package3d frame then fails with "no urn", and artifacts.package3d simultaneously says present: true. So three different views of the same fact disagree inside one response: the bind has it, the artifact check sees the package3d element, and the 3D frame cannot resolve it.
Most likely the prove step re-reads the .lbr from disk and the bind's wip_urn has not been flushed/reopened yet, or it is looking at the pre-bind copy. stagesDone shows bind finishing in 4.4s and prove running 259.6s afterwards, so it is not a race on elapsed time - more likely a stale handle or an un-reopened document.
Why this one matters more than a normal bug
Everything else in the chain behaves correctly, so the failure lands on the LAST honest gate: the library is genuinely fine, the 3D is genuinely bound, and the verdict is not proven. A caller doing the right thing (checking proven) throws away a good library. And the natural "fix" a caller reaches for is to stop trusting proven, which would undo the very guard that caught the Placeholder problem.
Two smaller things from the same run
1. thumbnail: "not_found" is doing real work - keep it. It is what turned "3 of 4 frames" into a refusal, and the hint is excellent:
"Do NOT present these frames as proof. A missing package3d renders as a grey Placeholder that photographs like a real chip, and a frame that failed its size check is not evidence of anything."
That is exactly the class of failure I reported in #44, now guarded properly.
2. The bind estimate is ~13x pessimistic. plan says bind: 60s, actual was 4.4s (and 1.9s on another run). prove is well calibrated: estimated 300s, actual 259.6s. Since stagesDone feeds the averages, this should self-correct - flagging the direction so you know the loop is working rather than stuck, and because a 60s bind estimate makes etaSec visibly pessimistic at the start of every run.