app
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.
master
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735
{
"date": "2026-09-06_1151",
"target": "AdomLapper",
"tier": "daily",
"pass": 23,
"fail": 35,
"sections": {
"bridge-lifecycle": {
"PASS": 3,
"FAIL": 14,
"MANUAL": 13,
"SKIP": 0
},
"gui-driving": {
"PASS": 6,
"FAIL": 9,
"MANUAL": 14,
"SKIP": 0
},
"aps": {
"PASS": 4,
"FAIL": 4,
"MANUAL": 11,
"SKIP": 0
},
"auth-tokens": {
"PASS": 2,
"FAIL": 0,
"MANUAL": 3,
"SKIP": 0
},
"mcp-server": {
"PASS": 0,
"FAIL": 1,
"MANUAL": 1,
"SKIP": 0
},
"cad-3d-bom": {
"PASS": 6,
"FAIL": 5,
"MANUAL": 2,
"SKIP": 0
},
"python-addin": {
"PASS": 2,
"FAIL": 2,
"MANUAL": 1,
"SKIP": 0
},
"exports": {
"PASS": 0,
"FAIL": 0,
"MANUAL": 1,
"SKIP": 0
}
},
"results": [
{
"verb": "fusion_apply_fusion_update",
"status": "FAIL",
"why": "described but untriaged in tests/run_verb_tests.py",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_electronics_query",
"status": "FAIL",
"why": "described but untriaged in tests/run_verb_tests.py",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_interactive",
"status": "FAIL",
"why": "described but untriaged in tests/run_verb_tests.py",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_narrate",
"status": "FAIL",
"why": "described but untriaged in tests/run_verb_tests.py",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_resolve_seat_dialog",
"status": "FAIL",
"why": "described but untriaged in tests/run_verb_tests.py",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_view",
"status": "FAIL",
"why": "described but untriaged in tests/run_verb_tests.py",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_readiness",
"status": "PASS",
"why": "",
"sec": 1.1,
"section": "bridge-lifecycle"
},
{
"verb": "fusion_describe",
"status": "FAIL",
"why": "verbs described but UNTRIAGED in test plan: ['fusion_load_design_rules']",
"sec": 0.1,
"section": "bridge-lifecycle"
},
{
"verb": "fusion_get_app_state",
"status": "FAIL",
"why": "expected success, got error=Fusion 360 is installed but not running. code=fusion_not_running",
"sec": 0.2,
"section": "gui-driving"
},
{
"verb": "fusion_search_cloud_files",
"status": "PASS",
"why": "",
"sec": 0.0,
"section": "aps"
},
{
"verb": "fusion_walk_cloud_tree",
"status": "PASS",
"why": "",
"sec": 0.0,
"section": "aps"
},
{
"verb": "fusion_aps_status",
"status": "PASS",
"why": "",
"sec": 0.0,
"section": "auth-tokens"
},
{
"verb": "fusion_aps_get_browser",
"status": "PASS",
"why": "",
"sec": 0.0,
"section": "aps"
},
{
"verb": "fusion_aps_search",
"status": "FAIL",
"why": "expected success, got error=APS is token_expired \u2014 sign in before cloud file operations. code=None; expected >0 results",
"sec": 0.0,
"section": "aps"
},
{
"verb": "fusion_aps_recent",
"status": "FAIL",
"why": "expected success, got error=APS is token_expired \u2014 sign in before cloud file operations. code=None; expected >0 results",
"sec": 0.0,
"section": "aps"
},
{
"verb": "fusion_aps_browse",
"status": "FAIL",
"why": "expected success, got error=APS is token_expired \u2014 sign in before cloud file operations. code=None; missing field 'hubs'",
"sec": 0.0,
"section": "aps"
},
{
"verb": "fusion_aps_file_info",
"status": "FAIL",
"why": "expected success, got error=APS is token_expired \u2014 sign in before cloud file operations. code=None; missing field 'versionCount'",
"sec": 0.0,
"section": "aps"
},
{
"verb": "fusion_aps_get",
"status": "PASS",
"why": "",
"sec": 1.6,
"section": "auth-tokens"
},
{
"verb": "fusion_uninstall",
"status": "FAIL",
"why": "expected success, got error=Fusion 360 is installed but not running. (command: uninstall) code=fusion_not_running; missing field 'removed'; missing field 'skipped'; missing field 'dryRun'",
"sec": 2.3,
"section": "bridge-lifecycle"
},
{
"verb": "fusion_set_seat_takeover",
"status": "FAIL",
"why": "expected success, got error=Fusion 360 is installed but not running. (command: set_seat_takeover) code=fusion_not_running; missing field 'autoTakeOverSeat'",
"sec": 2.2,
"section": "bridge-lifecycle"
},
{
"verb": "fusion_aps_create_folder",
"status": "MANUAL",
"why": "needs projectId/parentFolderId of the test workspace",
"section": "aps"
},
{
"verb": "fusion_aps_upload",
"status": "MANUAL",
"why": "cloud write; exercised via build flows weekly",
"section": "aps"
},
{
"verb": "fusion_aps_set_client_id",
"status": "MANUAL",
"why": "would clobber org auth config",
"section": "auth-tokens"
},
{
"verb": "fusion_aps_set_browser",
"status": "MANUAL",
"why": "",
"section": "aps"
},
{
"verb": "fusion_aps_forget_browser",
"status": "MANUAL",
"why": "",
"section": "aps"
},
{
"verb": "fusion_aps_signin",
"status": "MANUAL",
"why": "opens a browser on the user's machine",
"section": "auth-tokens"
},
{
"verb": "fusion_start",
"status": "PASS",
"why": "",
"sec": 53.7,
"section": "gui-driving"
},
{
"verb": "fusion_get_preferences",
"status": "PASS",
"why": "",
"sec": 5.1,
"section": "gui-driving"
},
{
"verb": "fusion_set_preference",
"status": "PASS",
"why": "",
"sec": 0.6,
"section": "gui-driving"
},
{
"verb": "fusion_mcp_status",
"status": "FAIL",
"why": "expected success, got error=Unknown command: mcp_status code=None; missing field 'enabled'",
"sec": 0.3,
"section": "mcp-server"
},
{
"verb": "fusion_mcp_enable",
"status": "MANUAL",
"why": "drives the prefs UI, takes foreground",
"section": "mcp-server"
},
{
"verb": "fusion_prefs_open",
"status": "MANUAL",
"why": "opens a dialog on the user's screen",
"section": "gui-driving"
},
{
"verb": "fusion_prefs_close",
"status": "MANUAL",
"why": "",
"section": "gui-driving"
},
{
"verb": "fusion_set_auto_update",
"status": "FAIL",
"why": "expected success, got error=Unknown command: set_auto_update code=None",
"sec": 0.3,
"section": "bridge-lifecycle"
},
{
"verb": "fusion_assembly_bom",
"status": "FAIL",
"why": "expected a BOM or the budget refusal, got error=Unknown command: assembly_bom code=None",
"sec": 0.3,
"section": "cad-3d-bom"
},
{
"verb": "fusion_dismiss_blocking_dialogs",
"status": "PASS",
"why": "",
"sec": 0.7,
"section": "gui-driving"
},
{
"verb": "fusion_open_cloud_file",
"status": "FAIL",
"why": "expected success, got error=Project 'Main' not found code=None",
"sec": 188.3,
"section": "gui-driving"
},
{
"verb": "fusion_show_schematic",
"status": "FAIL",
"why": "expected success, got error=Switch to schematic failed: 3 : Please open or create an electronics design to c code=None",
"sec": 0.4,
"section": "gui-driving"
},
{
"verb": "fusion_show_2d_board",
"status": "FAIL",
"why": "expected success, got error=Switch to 2D board failed: 3 : Please open or create an electronics design to co code=None",
"sec": 0.3,
"section": "gui-driving"
},
{
"verb": "fusion_board_info",
"status": "FAIL",
"why": "expected success, got error=No board open (current workspace: Design). Open a .brd file first with fusion_op code=None; missing field 'rawXml'",
"sec": 0.3,
"section": "gui-driving"
},
{
"verb": "fusion_execute_text_command",
"status": "FAIL",
"why": "expected success, got error=Text command failed: 3 : No active asset adapter. code=None",
"sec": 0.9,
"section": "python-addin"
},
{
"verb": "fusion_show_3d_board",
"status": "FAIL",
"why": "expected success, got error=Not in Electronics editor (current workspace: Design). Open a .brd board file fi code=None",
"sec": 0.3,
"section": "gui-driving"
},
{
"verb": "fusion_inspect_bodies",
"status": "FAIL",
"why": "expected success, got error=Unknown command: inspect_bodies code=None; missing field 'bodies'; missing field 'units'",
"sec": 0.3,
"section": "cad-3d-bom"
},
{
"verb": "fusion_physical_properties",
"status": "FAIL",
"why": "expected success, got error=Unknown command: physical_properties code=None",
"sec": 0.3,
"section": "cad-3d-bom"
},
{
"verb": "fusion_get_design_info",
"status": "PASS",
"why": "",
"sec": 0.4,
"section": "cad-3d-bom"
},
{
"verb": "fusion_get_parameters",
"status": "PASS",
"why": "",
"sec": 0.4,
"section": "cad-3d-bom"
},
{
"verb": "fusion_document_info",
"status": "PASS",
"why": "",
"sec": 0.3,
"section": "cad-3d-bom"
},
{
"verb": "fusion_run_modeling_script#guard",
"status": "FAIL",
"why": "expected errorCode=wrong_document got None (error=)",
"sec": 0.9,
"section": "python-addin"
},
{
"verb": "fusion_assembly_bom#guard",
"status": "FAIL",
"why": "expected errorCode=wrong_document got None (error=Unknown command: assembly_bom)",
"sec": 0.3,
"section": "cad-3d-bom"
},
{
"verb": "fusion_run_modeling_script",
"status": "PASS",
"why": "",
"sec": 0.9,
"section": "python-addin"
},
{
"verb": "fusion_electron_select",
"status": "MANUAL",
"why": "selection state is user-visible",
"section": "python-addin"
},
{
"verb": "fusion_open_design",
"status": "MANUAL",
"why": "local-file open; superseded by cloud flows",
"section": "gui-driving"
},
{
"verb": "fusion_close_window#noargs",
"status": "PASS",
"why": "",
"sec": 0.0,
"section": "gui-driving"
},
{
"verb": "fusion_close_document",
"status": "MANUAL",
"why": "",
"section": "gui-driving"
},
{
"verb": "fusion_close_all_documents",
"status": "MANUAL",
"why": "would close the user's own tabs",
"section": "gui-driving"
},
{
"verb": "fusion_export_obj",
"status": "MANUAL",
"why": "build/doc-type dependent (OBJ refused on the 2026-08-14 box); verify quarterly",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_export_fbx",
"status": "MANUAL",
"why": "build/doc-type dependent (OBJ refused on the 2026-08-14 box); verify quarterly",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_export_usdz",
"status": "MANUAL",
"why": "build/doc-type dependent (OBJ refused on the 2026-08-14 box); verify quarterly",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_export_dxf",
"status": "MANUAL",
"why": "build/doc-type dependent (OBJ refused on the 2026-08-14 box); verify quarterly",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_export_dwg",
"status": "MANUAL",
"why": "build/doc-type dependent (OBJ refused on the 2026-08-14 box); verify quarterly",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_export_skp",
"status": "MANUAL",
"why": "build/doc-type dependent (OBJ refused on the 2026-08-14 box); verify quarterly",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_set_design_rules",
"status": "MANUAL",
"why": "mutates the board's DRC rules",
"section": "exports"
},
{
"verb": "fusion_show_3d_package",
"status": "MANUAL",
"why": "enters Package3DEnvironment (exit needs Package3DStop + dialog); tour covers it; attach path in release rehearsals",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_bind_library_3d",
"status": "MANUAL",
"why": "cloud f3d mint per run; release rehearsals (needs signed-in session)",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_attach_3d_package",
"status": "MANUAL",
"why": "modal Save dialog needs a human eye",
"section": "gui-driving"
},
{
"verb": "fusion_make_3d_package",
"status": "MANUAL",
"why": "cloud upload; run in release rehearsals",
"section": "gui-driving"
},
{
"verb": "fusion_build_library_3d",
"status": "MANUAL",
"why": "long multi-part build; release rehearsals",
"section": "gui-driving"
},
{
"verb": "fusion_cleanup_cloud_files#guard",
"status": "PASS",
"why": "",
"sec": 0.3,
"section": "aps"
},
{
"verb": "fusion_cleanup_cloud_files",
"status": "MANUAL",
"why": "real cleanup takes explicit lineage urns; used by weekly build rehearsals",
"section": "aps"
},
{
"verb": "fusion_new_electronics_from_eagle",
"status": "MANUAL",
"why": "drives native dialogs",
"section": "gui-driving"
},
{
"verb": "fusion_screenshot_fusion",
"status": "PASS",
"why": "",
"sec": 2.7,
"section": "bridge-lifecycle"
},
{
"verb": "fusion_state",
"status": "FAIL",
"why": "expected success, got error=Unknown command: state code=None; missing field 'running'",
"sec": 0.3,
"section": "gui-driving"
},
{
"verb": "fusion_demo_progress#unknown",
"status": "PASS",
"why": "",
"sec": 0.2,
"section": "bridge-lifecycle"
},
{
"verb": "fusion_stop",
"status": "MANUAL",
"why": "lifecycle/human-wall verbs; manual tier",
"section": "gui-driving"
},
{
"verb": "fusion_kill",
"status": "MANUAL",
"why": "lifecycle/human-wall verbs; manual tier",
"section": "gui-driving"
},
{
"verb": "fusion_signin",
"status": "MANUAL",
"why": "lifecycle/human-wall verbs; manual tier",
"section": "gui-driving"
},
{
"verb": "fusion_signin_2fa",
"status": "MANUAL",
"why": "lifecycle/human-wall verbs; manual tier",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_demo",
"status": "MANUAL",
"why": "lifecycle/human-wall verbs; manual tier",
"section": "gui-driving"
},
{
"verb": "fusion_install_fusion",
"status": "MANUAL",
"why": "lifecycle/human-wall verbs; manual tier",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_notify_owner",
"status": "MANUAL",
"why": "lifecycle/human-wall verbs; manual tier",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_open_by_urn_note",
"status": "MANUAL",
"why": "lifecycle/human-wall verbs; manual tier",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_action_ledger",
"status": "FAIL",
"why": "expected success, got error=Unknown command: action_ledger code=None",
"sec": 0.3,
"section": "bridge-lifecycle"
},
{
"verb": "fusion_addin_status",
"status": "PASS",
"why": "",
"sec": 0.0,
"section": "python-addin"
},
{
"verb": "fusion_alerts",
"status": "FAIL",
"why": "expected success, got error=Unknown command: alerts code=None; missing field 'alerts'",
"sec": 0.2,
"section": "gui-driving"
},
{
"verb": "fusion_verb_times",
"status": "FAIL",
"why": "expected success, got error=Unknown command: verb_times code=None",
"sec": 0.3,
"section": "bridge-lifecycle"
},
{
"verb": "fusion_live_feed",
"status": "FAIL",
"why": "expected success, got error=Unknown command: live_feed code=None",
"sec": 0.2,
"section": "bridge-lifecycle"
},
{
"verb": "fusion_prove_result",
"status": "FAIL",
"why": "expected success, got error=Unknown command: prove_result code=None",
"sec": 0.2,
"section": "cad-3d-bom"
},
{
"verb": "fusion_set_driving_badge",
"status": "FAIL",
"why": "expected success, got error=Unknown command: set_driving_badge code=None",
"sec": 0.2,
"section": "bridge-lifecycle"
},
{
"verb": "fusion_set_window_sizing",
"status": "FAIL",
"why": "expected success, got error=Unknown command: set_window_sizing code=None",
"sec": 0.3,
"section": "gui-driving"
},
{
"verb": "fusion_cancel_run",
"status": "PASS",
"why": "",
"sec": 0.3,
"section": "cad-3d-bom"
},
{
"verb": "fusion_preflight_lbr",
"status": "PASS",
"why": "",
"sec": 0.3,
"section": "cad-3d-bom"
},
{
"verb": "fusion_library_parts",
"status": "PASS",
"why": "",
"sec": 0.2,
"section": "cad-3d-bom"
},
{
"verb": "fusion_create_library",
"status": "MANUAL",
"why": "the five-part drill covers it (fusion_install_library_bundle -> prove)",
"section": "cad-3d-bom"
},
{
"verb": "fusion_install_library_bundle",
"status": "MANUAL",
"why": "the five-part drill covers it; needs a bundle zip on the box",
"section": "cad-3d-bom"
},
{
"verb": "fusion_managed_library_create",
"status": "MANUAL",
"why": "creates a managed library on the hub (cloud write)",
"section": "aps"
},
{
"verb": "fusion_managed_library_link",
"status": "MANUAL",
"why": "drives LIBRARY.IO dialogs against the hub",
"section": "aps"
},
{
"verb": "fusion_managed_library_pull",
"status": "MANUAL",
"why": "drives LIBRARY.IO dialogs against the hub",
"section": "aps"
},
{
"verb": "fusion_managed_library_push",
"status": "MANUAL",
"why": "drives LIBRARY.IO dialogs; cloud write",
"section": "aps"
},
{
"verb": "fusion_managed_library_unlink",
"status": "MANUAL",
"why": "drives LIBRARY.IO dialogs against the hub",
"section": "aps"
},
{
"verb": "fusion_reset_workspace",
"status": "MANUAL",
"why": "closes the user's documents",
"section": "gui-driving"
},
{
"verb": "fusion_restart_for_addin",
"status": "MANUAL",
"why": "restarts Fusion",
"section": "bridge-lifecycle"
},
{
"verb": "fusion_save_to_cloud",
"status": "MANUAL",
"why": "cloud write; exercised by the drills",
"section": "aps"
},
{
"verb": "fusion_web_signin",
"status": "MANUAL",
"why": "opens a browser on the user's machine",
"section": "auth-tokens"
},
{
"verb": "focus_invariance",
"status": "PASS",
"why": "",
"section": "gui-driving"
}
],
"durationSec": 282.7
}