export const XYZAC_TRT_SOURCE_SLICES = Object.freeze({ "authority": { "authority_owner": "linuxcnc-wasm-worker", "existing_audit": { "open_boundaries": [ "T1_FULL_CANONICAL_CALLBACKS", "T2_FULL_WASM_PREVIEW", "T3_NON_SELECTED_MOTION_AUTHORITY", "T4_HAL_IO_TOOL_PROBE_CANONICAL_STATE", "T5_FULL_MATRIX" ], "path": "coverage/wasm-only-source-audit.report.json", "status": "blocked" }, "js_authority": 0 }, "axis_controls": { "keyboard_bindings": [ { "binding": "Alt-v", "control_id": "AXIS-KEY-ALT_V", "slice_id": "AXIS-XYZAC-KEYBOARD", "source": { "lines": "2242-2243", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "bind" } }, { "binding": "Button-1", "control_id": "AXIS-KEY-BUTTON_1", "slice_id": "AXIS-XYZAC-KEYBOARD", "source": { "lines": null, "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "bind" } }, { "binding": "ButtonRelease-1", "control_id": "AXIS-KEY-BUTTONRELEASE_1", "slice_id": "AXIS-XYZAC-KEYBOARD", "source": { "lines": null, "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "bind" } }, { "binding": "Configure", "control_id": "AXIS-KEY-CONFIGURE", "slice_id": "AXIS-XYZAC-KEYBOARD", "source": { "lines": "2234-2234", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "bind" } }, { "binding": "Control-Tab", "control_id": "AXIS-KEY-CONTROL_TAB", "slice_id": "AXIS-XYZAC-KEYBOARD", "source": { "lines": "1989-1989", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "bind" } }, { "binding": "Key-Escape", "control_id": "AXIS-KEY-KEY_ESCAPE", "slice_id": "AXIS-XYZAC-KEYBOARD", "source": { "lines": "1551-1607", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "bind" } }, { "binding": "Key-Return", "control_id": "AXIS-KEY-KEY_RETURN", "slice_id": "AXIS-XYZAC-KEYBOARD", "source": { "lines": "1550-2245", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "bind" } }, { "binding": "greater", "control_id": "AXIS-KEY-GREATER", "slice_id": "AXIS-XYZAC-KEYBOARD", "source": { "lines": "1406-1406", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "bind" } }, { "binding": "less", "control_id": "AXIS-KEY-LESS", "slice_id": "AXIS-XYZAC-KEYBOARD", "source": { "lines": "1405-1405", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "bind" } }, { "binding": "semicolon", "control_id": "AXIS-KEY-SEMICOLON", "slice_id": "AXIS-XYZAC-KEYBOARD", "source": { "lines": "1430-1430", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "bind" } } ], "keyboard_count": 10, "menu_count": 80, "menus": [ { "control_id": "AXIS-MENU-FILE-_OPEN...", "label_source": "\"_Open...\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "58-58", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-FILE-RECENT__FILES", "label_source": "\"Recent _Files\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "62-62", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-FILE-_EDIT...", "label_source": "\"_Edit...\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "66-66", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-FILE-_RELOAD", "label_source": "\"_Reload\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "71-71", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-FILE-_SAVE_G-CODE_AS...", "label_source": "\"_Save G-code as...\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "76-76", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-FILE-_PROPERTIES...", "label_source": "\"_Properties...\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "80-80", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-FILE-EDIT__TOOL_DATA...", "label_source": "\"Edit _tool data...\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "86-86", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-FILE-RELOAD_TOOL__DATA", "label_source": "\"Reload tool _data\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "90-90", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-FILE-_LADDER_EDITOR...", "label_source": "\"_Ladder Editor...\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "96-96", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-FILE-_QUIT", "label_source": "\"_Quit\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "102-102", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-TOGGLE__EMERGENCY_STOP", "label_source": "\"Toggle _Emergency Stop\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "108-108", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-TOGGLE__MACHINE_POWER", "label_source": "\"Toggle _Machine Power\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "113-113", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-_RUN_PROGRAM", "label_source": "\"_Run program\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "120-120", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-RU_N_FROM_SELECTED_LINE", "label_source": "\"Ru_n from selected line\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "124-124", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-S_TEP", "label_source": "\"S_tep\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "129-129", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-_PAUSE", "label_source": "\"_Pause\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "134-134", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-RE_SUME", "label_source": "\"Re_sume\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "139-139", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-STOP", "label_source": "\"Stop\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "144-144", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-STOP_AT_M_1", "label_source": "\"Stop at M_1\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "149-149", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-SKIP_LINES_WITH__/", "label_source": "\"Skip lines with '_/'\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "154-154", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-CLEAR_MDI_H_ISTORY", "label_source": "\"Clear MDI h_istory\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "161-161", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-COPY_FROM_MDI_HIST_ORY", "label_source": "\"Copy from MDI hist_ory\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "165-165", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-PASTE_TO_MDI_HISTOR_Y", "label_source": "\"Paste to MDI histor_y\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "169-169", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-_CALIBRATION", "label_source": "\"_Calibration\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "175-175", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-SHOW__HAL_CONFIGURATION", "label_source": "\"Show _Hal Configuration\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "179-179", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-H_AL_METER", "label_source": "\"H_al Meter\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "183-183", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-HA_L_SCOPE", "label_source": "\"Ha_l Scope\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "187-187", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-SHO_W_LINUXCNC_STATUS", "label_source": "\"Sho_w LinuxCNC Status\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "191-191", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-SET__DEBUG_LEVEL", "label_source": "\"Set _Debug Level\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "195-195", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-HOMIN_G", "label_source": "\"Homin_g\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "201-201", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-_UNHOMING", "label_source": "\"_Unhoming\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "205-205", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-_ZERO_COORDINATE_SYSTEM", "label_source": "\"_Zero coordinate system\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "209-209", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-CLEAROFFSET-P1__G5_4", "label_source": "\"P1 G5_4\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "213-213", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-CLEAROFFSET-P2__G5_5", "label_source": "\"P2 G5_5\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "217-217", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-CLEAROFFSET-P3__G5_6", "label_source": "\"P3 G5_6\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "221-221", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-CLEAROFFSET-P4__G5_7", "label_source": "\"P4 G5_7\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "225-225", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-CLEAROFFSET-P5__G5_8", "label_source": "\"P5 G5_8\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "229-229", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-CLEAROFFSET-P6__G5_9", "label_source": "\"P6 G5_9\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "233-233", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-CLEAROFFSET-P7__G59._1", "label_source": "\"P7 G59._1\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "237-237", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-CLEAROFFSET-P8__G59._2", "label_source": "\"P8 G59._2\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "241-241", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-CLEAROFFSET-P9__G59._3", "label_source": "\"P9 G59._3\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "245-245", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-CLEAROFFSET-_G92", "label_source": "\"_G92\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "249-249", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-TOOL_TOUCH_OFF_TO_WOR_KPIECE", "label_source": "\"Tool touch off to wor_kpiece\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "257-257", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-MACHINE-TOOL_TOUCH_OFF_TO__FIXTURE", "label_source": "\"Tool touch off to _fixture\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "263-263", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-_TOP_VIEW", "label_source": "\"_Top view\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "271-271", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-_ROTATED_TOP_VIEW", "label_source": "\"_Rotated Top view\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "278-278", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-_SIDE_VIEW", "label_source": "\"_Side view\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "285-285", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-_FRONT_VIEW", "label_source": "\"_Front view\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "292-292", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-_PERSPECTIVE_VIEW", "label_source": "\"_Perspective view\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "299-299", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-DISPLAY__INCHES", "label_source": "\"Display _Inches\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "308-308", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-DISPLAY__MM", "label_source": "\"Display _MM\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "315-315", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-S_HOW_PROGRAM", "label_source": "\"S_how program\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "322-322", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-SHOW_PROGRAM_R_APIDS", "label_source": "\"Show program r_apids\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "327-327", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-ALPHA-_BLEND_PROGRAM", "label_source": "\"Alpha-_blend program\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "332-332", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-SHO_W_LIVE_PLOT", "label_source": "\"Sho_w live plot\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "337-337", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-SHOW_TOO_L", "label_source": "\"Show too_l\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "342-342", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-SHOW_E_XTENTS", "label_source": "\"Show e_xtents\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "347-347", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-_GRID", "label_source": "\"_Grid\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "351-351", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-SHOW_O_FFSETS", "label_source": "\"Show o_ffsets\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "356-356", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-SH_OW_MACHINE_LIMITS", "label_source": "\"Sh_ow machine limits\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "361-361", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-SHOW_V_ELOCITY", "label_source": "\"Show v_elocity\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "366-366", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-SHOW__DISTANCE_TO_GO", "label_source": "\"Show _distance to go\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "371-371", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-LARGE_COORDINATE_FO_NT", "label_source": "\"Large coordinate fo_nt\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "376-376", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-_CLEAR_LIVE_PLOT", "label_source": "\"_Clear live plot\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "381-381", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-SHOW_PYVCP_PAN_EL", "label_source": "\"Show PyVCP pan_el\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "387-387", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-SHOW_COMMANDED_POSITION", "label_source": "\"Show commanded position\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "396-396", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-SHOW_ACTUAL_POSITION", "label_source": "\"Show actual position\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "403-403", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-SHOW_MACHINE_POSITION", "label_source": "\"Show machine position\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "412-412", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-SHOW_RELATIVE_POSITION", "label_source": "\"Show relative position\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "419-419", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-JOINT_MODE", "label_source": "\"Joint mode\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "428-428", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-WORLD_MODE", "label_source": "\"World mode\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "435-435", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-GRID-_OFF", "label_source": "\"_Off\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "443-443", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-VIEW-GRID-_CUSTOM", "label_source": "\"_Custom\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "449-449", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-HELP-_ABOUT_AXIS", "label_source": "\"_About AXIS\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "460-460", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-HELP-QUICK__REFERENCE", "label_source": "\"Quick _Reference\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "464-464", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU--_FILE", "label_source": "_File]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "470-470", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU--_MACHINE", "label_source": "_Machine]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "474-474", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU--_VIEW", "label_source": "_View]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "478-478", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU--_HELP", "label_source": "_Help]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "482-482", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } }, { "control_id": "AXIS-MENU-FILE-RECENT-_CLEAR_RECENTS_LIST", "label_source": "\"_Clear Recents List\"]", "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "2230-2230", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": "setup_menu_accel" } } ], "source_sha256": "c9f0b4dc686717b37565f85fb0ab8cc8ded9cfa0028cc0aaaccdbcf808c4c524", "toolbar": [ { "control_id": "AXIS-TOOLBAR-MACHINE_ESTOP", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "490-1775", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.machine_estop" }, "widget": ".toolbar.machine_estop" }, { "control_id": "AXIS-TOOLBAR-MACHINE_POWER", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "498-1778", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.machine_power" }, "widget": ".toolbar.machine_power" }, { "control_id": "AXIS-TOOLBAR-FILE_OPEN", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "509-1787", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.file_open" }, "widget": ".toolbar.file_open" }, { "control_id": "AXIS-TOOLBAR-RELOAD", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "517-1781", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.reload" }, "widget": ".toolbar.reload" }, { "control_id": "AXIS-TOOLBAR-PROGRAM_RUN", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "527-1799", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.program_run" }, "widget": ".toolbar.program_run" }, { "control_id": "AXIS-TOOLBAR-PROGRAM_STEP", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "535-1801", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.program_step" }, "widget": ".toolbar.program_step" }, { "control_id": "AXIS-TOOLBAR-PROGRAM_PAUSE", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "543-1810", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.program_pause" }, "widget": ".toolbar.program_pause" }, { "control_id": "AXIS-TOOLBAR-PROGRAM_STOP", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "558-1818", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.program_stop" }, "widget": ".toolbar.program_stop" }, { "control_id": "AXIS-TOOLBAR-PROGRAM_BLOCKDELETE", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "568-1812", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.program_blockdelete" }, "widget": ".toolbar.program_blockdelete" }, { "control_id": "AXIS-TOOLBAR-PROGRAM_OPTPAUSE", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "575-1814", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.program_optpause" }, "widget": ".toolbar.program_optpause" }, { "control_id": "AXIS-TOOLBAR-VIEW_ZOOMIN", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "584-741", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.view_zoomin" }, "widget": ".toolbar.view_zoomin" }, { "control_id": "AXIS-TOOLBAR-VIEW_ZOOMOUT", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "592-745", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.view_zoomout" }, "widget": ".toolbar.view_zoomout" }, { "control_id": "AXIS-TOOLBAR-VIEW_Z", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "584-753", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.view_z" }, "widget": ".toolbar.view_z" }, { "control_id": "AXIS-TOOLBAR-VIEW_Z2", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "608-753", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.view_z2" }, "widget": ".toolbar.view_z2" }, { "control_id": "AXIS-TOOLBAR-VIEW_X", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "616-757", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.view_x" }, "widget": ".toolbar.view_x" }, { "control_id": "AXIS-TOOLBAR-VIEW_Y", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "624-765", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.view_y" }, "widget": ".toolbar.view_y" }, { "control_id": "AXIS-TOOLBAR-VIEW_Y2", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "632-765", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.view_y2" }, "widget": ".toolbar.view_y2" }, { "control_id": "AXIS-TOOLBAR-VIEW_P", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "640-769", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.view_p" }, "widget": ".toolbar.view_p" }, { "control_id": "AXIS-TOOLBAR-ROTATE", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "648-773", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.rotate" }, "widget": ".toolbar.rotate" }, { "control_id": "AXIS-TOOLBAR-CLEAR_PLOT", "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "663-784", "path": "linuxcnc/share/axis/tcl/axis.tcl", "symbol": ".toolbar.clear_plot" }, "widget": ".toolbar.clear_plot" } ], "toolbar_count": 20 }, "case": { "path": "linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.ini", "sha256": "f985970db293b70c055e4c41fc316d0c16037b5dc7ce07490e18f554e851f811", "status": "indexed" }, "command_contract": [ { "command": "PROGRAM_LOAD", "slice_id": "AXIS-XYZAC-PROGRAM-MDI" }, { "command": "PROGRAM_RUN", "slice_id": "AXIS-XYZAC-PROGRAM-MDI" }, { "command": "PROGRAM_PAUSE", "slice_id": "AXIS-XYZAC-PROGRAM-MDI" }, { "command": "PROGRAM_RESUME", "slice_id": "AXIS-XYZAC-PROGRAM-MDI" }, { "command": "PROGRAM_ABORT", "slice_id": "AXIS-XYZAC-PROGRAM-MDI" }, { "command": "PROGRAM_RESTART", "slice_id": "AXIS-XYZAC-PROGRAM-MDI" }, { "command": "MDI_EXECUTE", "slice_id": "AXIS-XYZAC-PROGRAM-MDI" }, { "command": "JOG_START", "slice_id": "AXIS-XYZAC-JOG-HOME" }, { "command": "JOG_STOP", "slice_id": "AXIS-XYZAC-JOG-HOME" }, { "command": "HOME", "slice_id": "AXIS-XYZAC-JOG-HOME" }, { "command": "POWER", "slice_id": "AXIS-XYZAC-SHELL-MENU" }, { "command": "ESTOP", "slice_id": "AXIS-XYZAC-SHELL-MENU" }, { "command": "RESET", "slice_id": "AXIS-XYZAC-SHELL-MENU" }, { "command": "M428", "slice_id": "AXIS-XYZAC-M428-M429-M430" }, { "command": "M429", "slice_id": "AXIS-XYZAC-M428-M429-M430" }, { "command": "M430", "slice_id": "AXIS-XYZAC-M428-M429-M430" }, { "command": "SIM_STEP", "slice_id": "AXIS-XYZAC-TASK-TP-MOTION" }, { "command": "CHECKPOINT", "slice_id": "AXIS-XYZAC-ERROR-RECOVERY" }, { "command": "RECOVER", "slice_id": "AXIS-XYZAC-ERROR-RECOVERY" } ], "context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1", "counts": { "axis_keyboard": 10, "axis_menus": 80, "axis_toolbar": 20, "blocked_resources": 0, "direct_sources": 35, "slices": 11, "unregistered_slices": 0 }, "error_contract": [ { "error": "axis_gate", "slice_id": "AXIS-XYZAC-SHELL-MENU" }, { "error": "M428_HAL_PIN_MISSING", "slice_id": "AXIS-XYZAC-M428-M429-M430" }, { "error": "kinematics_singular", "slice_id": "AXIS-XYZAC-KINEMATICS" }, { "error": "following_error", "slice_id": "AXIS-XYZAC-TASK-TP-MOTION" }, { "error": "ledger_reconcile_required", "slice_id": "AXIS-XYZAC-ERROR-RECOVERY" } ], "recovery_contract": [ { "recovery": "pause_resume", "slice_id": "AXIS-XYZAC-ERROR-RECOVERY" }, { "recovery": "abort", "slice_id": "AXIS-XYZAC-ERROR-RECOVERY" }, { "recovery": "checkpoint", "slice_id": "AXIS-XYZAC-ERROR-RECOVERY" }, { "recovery": "worker_restart_reconcile", "slice_id": "AXIS-XYZAC-ERROR-RECOVERY" }, { "recovery": "no_duplicate_mcode", "slice_id": "AXIS-XYZAC-ERROR-RECOVERY" } ], "report_sha256": "6fdc4530f450c3305a2ab4ddc6cdb3296a6cec0f62ab87cc2cd6cfcd0d43f00f", "schema": "xyzac-trt-source-slice-inventory.v1", "slices": [ { "authoritative_outputs": [ "task/mode/error snapshot" ], "authority": "linuxcnc-wasm-worker", "boundary_cases": [ "fixed logical tick and finite values required" ], "domain": "axis-shell", "error_cases": [ "SOURCE_BLOCKED: no per-control WASM trace" ], "gates": [ "estop/off/mode gate" ], "inputs": [ "menu event" ], "native_commands": [ "AXIS Tcl command" ], "normal_cases": [ "not executed: SRC-00 inventory scope" ], "recovery_cases": [ "operation ledger reconcile" ], "slice_id": "AXIS-XYZAC-SHELL-MENU", "source": { "lines": "58-2230", "path": "linuxcnc/share/axis/tcl/axis.tcl", "sha256": "c9f0b4dc686717b37565f85fb0ab8cc8ded9cfa0028cc0aaaccdbcf808c4c524", "symbol": "setup_menu_accel" }, "status": "SOURCE_MAPPED", "ui_controls": [ "AXIS-MENU-*" ], "wasm_commands": [ "WORKER_COMMAND" ], "wasm_evidence": [ { "authority": "wasm", "path": "web/worker/test_panel_snapshot_projection.mjs", "status": "verified" }, { "authority": "wasm", "path": "web/worker/test_wasm_motion_authority.mjs", "status": "verified" } ] }, { "authoritative_outputs": [ "axis_state", "state_hash", "command_result" ], "authority": "linuxcnc-wasm-worker", "boundary_cases": [ "fixed logical tick and finite values required" ], "domain": "axis-toolbar", "error_cases": [ "SOURCE_BLOCKED: native handler matrix not runtime compared" ], "gates": [ "task_ready", "mode", "fault" ], "inputs": [ "toolbar click" ], "native_commands": [ "estop_clicked/task_run/task_pause/task_stop" ], "normal_cases": [ "not executed: SRC-00 inventory scope" ], "recovery_cases": [ "checkpoint/reconcile" ], "slice_id": "AXIS-XYZAC-TOOLBAR", "source": { "lines": "490-1775", "path": "linuxcnc/share/axis/tcl/axis.tcl", "sha256": "c9f0b4dc686717b37565f85fb0ab8cc8ded9cfa0028cc0aaaccdbcf808c4c524", "symbol": ".toolbar.machine_estop" }, "status": "SOURCE_MAPPED", "ui_controls": [ "AXIS-TOOLBAR-*" ], "wasm_commands": [ "ESTOP", "PROGRAM_RUN", "PROGRAM_PAUSE", "PROGRAM_ABORT" ], "wasm_evidence": [ { "authority": "wasm", "path": "web/worker/test_panel_snapshot_projection.mjs", "status": "verified" }, { "authority": "wasm", "path": "web/worker/test_wasm_motion_authority.mjs", "status": "verified" } ] }, { "authoritative_outputs": [ "authoritative snapshot", "gate reason" ], "authority": "linuxcnc-wasm-worker", "boundary_cases": [ "fixed logical tick and finite values required" ], "domain": "axis-keyboard", "error_cases": [ "SOURCE_BLOCKED: keyboard Worker evidence pending" ], "gates": [ "focus/input protection", "manual mode" ], "inputs": [ "keyboard binding" ], "native_commands": [ "jog/task/mode binding" ], "normal_cases": [ "not executed: SRC-00 inventory scope" ], "recovery_cases": [ "pending operation reconcile" ], "slice_id": "AXIS-XYZAC-KEYBOARD", "source": { "lines": "20-2245", "path": "linuxcnc/share/axis/tcl/axis.tcl", "sha256": "c9f0b4dc686717b37565f85fb0ab8cc8ded9cfa0028cc0aaaccdbcf808c4c524", "symbol": "bind" }, "status": "SOURCE_MAPPED", "ui_controls": [ "AXIS-KEY-*" ], "wasm_commands": [ "JOG_START", "JOG_STOP", "PROGRAM_RUN", "PROGRAM_ABORT" ], "wasm_evidence": [ { "authority": "wasm", "path": "web/worker/test_panel_snapshot_projection.mjs", "status": "verified" }, { "authority": "wasm", "path": "web/worker/test_wasm_motion_authority.mjs", "status": "verified" } ] }, { "authoritative_outputs": [ "program", "canonical trajectory", "task.interp_state", "state_hash" ], "authority": "linuxcnc-wasm-worker", "boundary_cases": [ "fixed logical tick and finite values required" ], "domain": "program-mdi", "error_cases": [ "SOURCE_BLOCKED: exact case WASM execution not proven" ], "gates": [ "task_idle", "file_loaded", "mode_mdi/auto", "no_fault" ], "inputs": [ "program/MDI text" ], "native_commands": [ "commands.send_mdi_command", "commands.task_run" ], "normal_cases": [ "not executed: SRC-00 inventory scope" ], "recovery_cases": [ "checkpoint/replay/no-duplicate-side-effect" ], "slice_id": "AXIS-XYZAC-PROGRAM-MDI", "source": { "lines": "2255-2454", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "sha256": "328c038a1e8fefd952e53c8e398e3fa98b04602351c44318edd1b044e8f63ffa", "symbol": "send_mdi_command" }, "status": "SOURCE_MAPPED", "ui_controls": [ "AXIS-PROGRAM", "AXIS-MDI" ], "wasm_commands": [ "PROGRAM_LOAD", "PROGRAM_RUN", "MDI_EXECUTE", "PROGRAM_PAUSE", "PROGRAM_RESUME", "PROGRAM_ABORT" ], "wasm_evidence": [ { "authority": "wasm", "path": "web/worker/test_panel_snapshot_projection.mjs", "status": "verified" }, { "authority": "wasm", "path": "web/worker/test_wasm_motion_authority.mjs", "status": "verified" } ] }, { "authoritative_outputs": [ "motion.axes", "motion.joints", "home_limit", "state_hash" ], "authority": "linuxcnc-wasm-worker", "boundary_cases": [ "fixed logical tick and finite values required" ], "domain": "manual-motion", "error_cases": [ "SOURCE_BLOCKED: exact XYZAC Worker comparison pending" ], "gates": [ "manual_ok", "axis_enabled", "homing_allowed", "limit/fault" ], "inputs": [ "axis/joint/direction/velocity" ], "native_commands": [ "jog_on", "jog_off", "home_joint", "home_all_joints" ], "normal_cases": [ "not executed: SRC-00 inventory scope" ], "recovery_cases": [ "pause/resume/abort" ], "slice_id": "AXIS-XYZAC-JOG-HOME", "source": { "lines": "2670-3323", "path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py", "sha256": "328c038a1e8fefd952e53c8e398e3fa98b04602351c44318edd1b044e8f63ffa", "symbol": "jog_on" }, "status": "SOURCE_MAPPED", "ui_controls": [ "AXIS-JOG", "AXIS-HOME" ], "wasm_commands": [ "JOG_START", "JOG_STOP", "HOME" ], "wasm_evidence": [ { "authority": "wasm", "path": "web/worker/test_panel_snapshot_projection.mjs", "status": "verified" }, { "authority": "wasm", "path": "web/worker/test_wasm_motion_authority.mjs", "status": "verified" } ] }, { "authoritative_outputs": [ "wasm canonical trajectory", "visual.pose", "motion.joints" ], "authority": "linuxcnc-wasm-worker", "boundary_cases": [ "fixed logical tick and finite values required" ], "domain": "preview-vismach", "error_cases": [ "SOURCE_BLOCKED: JS preview forbidden; exact case evidence pending" ], "gates": [ "program_parse_ok", "canonical_source_present" ], "inputs": [ "parsed program", "canonical events" ], "native_commands": [ "canon/gremlin/vismach" ], "normal_cases": [ "not executed: SRC-00 inventory scope" ], "recovery_cases": [ "clear visual only; no motion mutation" ], "slice_id": "AXIS-XYZAC-PREVIEW-VISUAL", "source": { "lines": "426-426", "path": "linuxcnc/lib/python/rs274/glcanon.py", "sha256": "0dfb20f1fdc05289894f3aa638357d98e1063fbd53329c723c777399ec7b33b7", "symbol": "GlCanon" }, "status": "SOURCE_MAPPED", "ui_controls": [ "AXIS-PREVIEW", "AXIS-VISMACH" ], "wasm_commands": [ "PROGRAM_LOAD", "SNAPSHOT_REQUEST" ], "wasm_evidence": [ { "authority": "wasm", "path": "web/worker/test_panel_snapshot_projection.mjs", "status": "verified" }, { "authority": "wasm", "path": "web/worker/test_wasm_motion_authority.mjs", "status": "verified" } ] }, { "authoritative_outputs": [ "motion.switchkins-type", "kinstype_is_0/1/2", "state_hash" ], "authority": "linuxcnc-wasm-worker", "boundary_cases": [ "fixed logical tick and finite values required" ], "domain": "pyvcp-hal", "error_cases": [ "BLOCKED_HAL: native HAL load not proven in WASM case" ], "gates": [ "interp_idle", "HAL_PIN_VARS", "switchkins_net_present" ], "inputs": [ "PyVCP button/HAL net" ], "native_commands": [ "halui.mdi-command-00/01/02" ], "normal_cases": [ "not executed: SRC-00 inventory scope" ], "recovery_cases": [ "ledger reconcile/no duplicate M-code" ], "slice_id": "AXIS-XYZAC-PYVCP-SWITCHKINS", "source": { "lines": null, "path": "linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/switchkins_postgui.hal", "sha256": "55e969c22ca9054a818dbedc8ec50bed768d9ab3d8c4bfdfcfc78e912e9271c4", "symbol": "type0-button/type1-button/type2-button" }, "status": "SOURCE_MAPPED", "ui_controls": [ "AXIS-RTCP-TYPE-0", "AXIS-RTCP-TYPE-1", "AXIS-RTCP-TYPE-2" ], "wasm_commands": [ "MDI_EXECUTE:M429", "MDI_EXECUTE:M428", "MDI_EXECUTE:M430" ], "wasm_evidence": [ { "authority": "wasm", "path": "web/worker/test_panel_snapshot_projection.mjs", "status": "verified" }, { "authority": "wasm", "path": "web/worker/test_wasm_motion_authority.mjs", "status": "verified" } ] }, { "authoritative_outputs": [ "kinematics.active_type", "motion.switchkins-type", "state_hash" ], "authority": "linuxcnc-wasm-worker", "boundary_cases": [ "fixed logical tick and finite values required" ], "domain": "switchkins-rtcp", "error_cases": [ "BLOCKED_STARTUP: native kins startup did not reach verified state" ], "gates": [ "interp_idle", "HAL_PIN_VARS", "switchkins_net", "finite_offsets" ], "inputs": [ "MDI/G-code M428/M429/M430", "motion.switchkins-type" ], "native_commands": [ "M68 E3 Q{0,1,2}", "M66 E0 L0" ], "normal_cases": [ "not executed: SRC-00 inventory scope" ], "recovery_cases": [ "checkpoint/reconcile; no blind retry" ], "slice_id": "AXIS-XYZAC-M428-M429-M430", "source": { "lines": null, "path": "linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/remap_subs/428remap.ngc", "sha256": "a0aee1d6b481a979849a17c0a23aa7524f52cbd875c92cbde3b73bf36f91d17b", "symbol": "428remap/429remap/430remap" }, "status": "SOURCE_MAPPED", "ui_controls": [ "AXIS-RTCP-M428", "AXIS-RTCP-M429", "AXIS-RTCP-M430" ], "wasm_commands": [ "MDI_EXECUTE", "KINEMATICS_SELECT" ], "wasm_evidence": [ { "authority": "wasm", "path": "web/worker/test_panel_snapshot_projection.mjs", "status": "verified" }, { "authority": "wasm", "path": "web/worker/test_wasm_motion_authority.mjs", "status": "verified" } ] }, { "authoritative_outputs": [ "pose", "joints", "limits", "state_hash" ], "authority": "linuxcnc-wasm-worker", "boundary_cases": [ "fixed logical tick and finite values required" ], "domain": "kinematics", "error_cases": [ "SOURCE_BLOCKED: exact XYZAC native/WASM trace unavailable" ], "gates": [ "active_type", "five_joint_mapping", "finite_offsets", "limits" ], "inputs": [ "five joints", "A/C degrees", "tool/axis offsets" ], "native_commands": [ "kinematicsForward", "kinematicsInverse" ], "normal_cases": [ "not executed: SRC-00 inventory scope" ], "recovery_cases": [ "checkpoint pose/joint/hash recovery" ], "slice_id": "AXIS-XYZAC-KINEMATICS", "source": { "lines": "151-195", "path": "linuxcnc/src/emc/kinematics/trtfuncs.c", "sha256": "ced2f9d4732681e2e82153b2f6343eccdf6972222d558d1e277bf1ec0bdc87fd", "symbol": "xyzacKinematicsForward" }, "status": "SOURCE_MAPPED", "ui_controls": [ "AXIS-XYZAC-POSE" ], "wasm_commands": [ "KINEMATICS_FORWARD", "KINEMATICS_INVERSE" ], "wasm_evidence": [ { "authority": "wasm", "path": "web/worker/test_panel_snapshot_projection.mjs", "status": "verified" }, { "authority": "wasm", "path": "web/worker/test_wasm_motion_authority.mjs", "status": "verified" } ] }, { "authoritative_outputs": [ "task", "program", "planner", "motion", "simulation_tick", "state_hash" ], "authority": "linuxcnc-wasm-worker", "boundary_cases": [ "fixed logical tick and finite values required" ], "domain": "task-tp-motion", "error_cases": [ "SOURCE_BLOCKED: no exact case Worker trace attached" ], "gates": [ "ESTOP/OFF/ON/HOME/IDLE/RUNNING/PAUSED/limit/fault" ], "inputs": [ "task/interpreter/TP input" ], "native_commands": [ "task cycle", "TP queue", "motion control" ], "normal_cases": [ "not executed: SRC-00 inventory scope" ], "recovery_cases": [ "checkpoint/replay/reconcile" ], "slice_id": "AXIS-XYZAC-TASK-TP-MOTION", "source": { "lines": "2-2125", "path": "linuxcnc/src/emc/motion/control.c", "sha256": "fa1b14689e2e4493c02d0939f982278366d4c1888da62e172cec030904c82c50", "symbol": "control" }, "status": "SOURCE_MAPPED", "ui_controls": [ "AXIS-STATE" ], "wasm_commands": [ "SIM_STEP", "PROGRAM_RUN", "PROGRAM_PAUSE", "PROGRAM_RESUME", "PROGRAM_ABORT" ], "wasm_evidence": [ { "authority": "wasm", "path": "web/worker/test_panel_snapshot_projection.mjs", "status": "verified" }, { "authority": "wasm", "path": "web/worker/test_wasm_motion_authority.mjs", "status": "verified" } ] }, { "authoritative_outputs": [ "error", "ledger", "checkpoint", "recovery endpoint", "state_hash" ], "authority": "linuxcnc-wasm-worker", "boundary_cases": [ "fixed logical tick and finite values required" ], "domain": "error-recovery", "error_cases": [ "SOURCE_BLOCKED: exact case crash/restart evidence pending" ], "gates": [ "operation_id", "seq", "ack/result/commit" ], "inputs": [ "command result/error" ], "native_commands": [ "command dispatch/abort" ], "normal_cases": [ "not executed: SRC-00 inventory scope" ], "recovery_cases": [ "reconcile before retry" ], "slice_id": "AXIS-XYZAC-ERROR-RECOVERY", "source": { "lines": "2-1910", "path": "linuxcnc/src/emc/motion/command.c", "sha256": "9d138ed5780a11ed037aa238781f4bfb4960a73ee23c0b0abf0724db068b3e3f", "symbol": "command" }, "status": "SOURCE_MAPPED", "ui_controls": [ "AXIS-DIAGNOSTICS", "AXIS-RECOVERY" ], "wasm_commands": [ "COMMAND_RESULT", "ERROR", "CHECKPOINT", "RECOVER" ], "wasm_evidence": [ { "authority": "wasm", "path": "web/worker/test_panel_snapshot_projection.mjs", "status": "verified" }, { "authority": "wasm", "path": "web/worker/test_wasm_motion_authority.mjs", "status": "verified" } ] } ], "state_contract": [ { "slice_id": "AXIS-XYZAC-TASK-TP-MOTION", "state": "task.state" }, { "slice_id": "AXIS-XYZAC-TASK-TP-MOTION", "state": "task.mode" }, { "slice_id": "AXIS-XYZAC-PROGRAM-MDI", "state": "task.interp_state" }, { "slice_id": "AXIS-XYZAC-PROGRAM-MDI", "state": "program.current_line" }, { "slice_id": "AXIS-XYZAC-SHELL-MENU", "state": "axis_state.machine_state" }, { "slice_id": "AXIS-XYZAC-SHELL-MENU", "state": "axis_state.operation_state" }, { "slice_id": "AXIS-XYZAC-SHELL-MENU", "state": "device_io.state.estop" }, { "slice_id": "AXIS-XYZAC-SHELL-MENU", "state": "device_io.state.ready" }, { "slice_id": "AXIS-XYZAC-KINEMATICS", "state": "motion.joints" }, { "slice_id": "AXIS-XYZAC-M428-M429-M430", "state": "kinematics.active_type" }, { "slice_id": "AXIS-XYZAC-PYVCP-SWITCHKINS", "state": "motion.switchkins-type" }, { "slice_id": "AXIS-XYZAC-KINEMATICS", "state": "pose" }, { "slice_id": "AXIS-XYZAC-ERROR-RECOVERY", "state": "state_hash" } ], "visual_contract": [ { "slice_id": "AXIS-XYZAC-PREVIEW-VISUAL", "visual": "canonical_toolpath" }, { "slice_id": "AXIS-XYZAC-PREVIEW-VISUAL", "visual": "wasm_pose" }, { "slice_id": "AXIS-XYZAC-PREVIEW-VISUAL", "visual": "wasm_joints" }, { "slice_id": "AXIS-XYZAC-PREVIEW-VISUAL", "visual": "vismach_clear" } ] });