Wire AXIS controls through operation gates
This commit is contained in:
137
coverage/axis-control.report.json
Normal file
137
coverage/axis-control.report.json
Normal file
@@ -0,0 +1,137 @@
|
||||
{
|
||||
"boundaries": [
|
||||
"no protocol/schema/ABI mutation",
|
||||
"browser controls do not imply physical safety authority",
|
||||
"host processes and real hardware remain excluded"
|
||||
],
|
||||
"checks": {
|
||||
"estop_power_recover": {
|
||||
"commands": [
|
||||
"ESTOP",
|
||||
"IO_RECOVER"
|
||||
],
|
||||
"status": "verified"
|
||||
},
|
||||
"gate_before_send": {
|
||||
"blocked_gate_does_not_send": true,
|
||||
"status": "verified"
|
||||
},
|
||||
"keyboard_map": {
|
||||
"input_controls_protected": true,
|
||||
"keys": 10,
|
||||
"status": "verified"
|
||||
},
|
||||
"mdi_jog_home": {
|
||||
"commands": [
|
||||
"MDI_EXECUTE",
|
||||
"JOG_START",
|
||||
"JOG_STOP",
|
||||
"HOME"
|
||||
],
|
||||
"status": "verified"
|
||||
},
|
||||
"operation_trace": {
|
||||
"monotonic_ids": true,
|
||||
"pending_result_error_blocked": true,
|
||||
"status": "verified"
|
||||
},
|
||||
"program_controls": {
|
||||
"commands": [
|
||||
"PROGRAM_RUN",
|
||||
"PROGRAM_STEP",
|
||||
"PROGRAM_PAUSE",
|
||||
"PROGRAM_RESUME",
|
||||
"PROGRAM_ABORT",
|
||||
"PROGRAM_RESTART"
|
||||
],
|
||||
"status": "verified"
|
||||
},
|
||||
"spindle_coolant_override": {
|
||||
"commands": [
|
||||
"SPINDLE_COMMAND",
|
||||
"COOLANT_COMMAND",
|
||||
"SET_OVERRIDE"
|
||||
],
|
||||
"status": "verified"
|
||||
},
|
||||
"worker_authority": {
|
||||
"state_source": "Worker protocol envelopes",
|
||||
"status": "verified"
|
||||
}
|
||||
},
|
||||
"context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
|
||||
"implementation": {
|
||||
"app_path": "web/react/src/App.tsx",
|
||||
"app_sha256": "63cf25079ae07f638028c9d086ab60ab3f4f66abb2219ab40b32affead6da67c",
|
||||
"controller_path": "web/app/axis-operation-controller.mjs",
|
||||
"controller_sha256": "077e344c5ea1b76fa11613b1e50b6e292d1b766f907c818f7ce42d6afe4f62bb",
|
||||
"keyboard": [
|
||||
"F1",
|
||||
"F2",
|
||||
"F3",
|
||||
"F5",
|
||||
"R",
|
||||
"T",
|
||||
"P",
|
||||
"S",
|
||||
"Escape",
|
||||
"Ctrl-K"
|
||||
],
|
||||
"operation_id_policy": "axis-<command>-<six-digit-monotonic-counter>",
|
||||
"test_path": "web/app/test_axis_operation_controller.mjs",
|
||||
"test_sha256": "dcc4f161305718b2da11e7552813452ec23cb26e7b9c087f6eff49d928642fb1",
|
||||
"trace_phases": [
|
||||
"pending",
|
||||
"result",
|
||||
"error",
|
||||
"blocked"
|
||||
]
|
||||
},
|
||||
"implementation_status": "worker_backed_operation_controller",
|
||||
"report_sha256": "cc12b349cc3fc3e7d1882530f123ca92e4a510f3f40fec4c72bcfd4e876f0a3e",
|
||||
"schema": "axis-control-report.v1",
|
||||
"source_anchors": [
|
||||
{
|
||||
"lines": "105-264",
|
||||
"path": "linuxcnc/share/axis/tcl/axis.tcl",
|
||||
"role": "machine menu"
|
||||
},
|
||||
{
|
||||
"lines": "484-787",
|
||||
"path": "linuxcnc/share/axis/tcl/axis.tcl",
|
||||
"role": "toolbar actions"
|
||||
},
|
||||
{
|
||||
"lines": "2214-2409",
|
||||
"path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py",
|
||||
"role": "estop/program controls"
|
||||
},
|
||||
{
|
||||
"lines": "2701-2915",
|
||||
"path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py",
|
||||
"role": "home/touch-off/spindle/coolant"
|
||||
},
|
||||
{
|
||||
"lines": "3213-3305",
|
||||
"path": "linuxcnc/src/emc/usr_intf/axis/scripts/axis.py",
|
||||
"role": "jog press/release"
|
||||
}
|
||||
],
|
||||
"status": "verified",
|
||||
"task_id": "AXIS-CTRL-01..08",
|
||||
"trace_sample": [
|
||||
{
|
||||
"operation_id": "axis-program-run-000001",
|
||||
"phase": "pending"
|
||||
},
|
||||
{
|
||||
"operation_id": "axis-program-run-000001",
|
||||
"phase": "result"
|
||||
},
|
||||
{
|
||||
"operation_id": "axis-jog-start-000002",
|
||||
"phase": "blocked",
|
||||
"reason": "axis_estop_active"
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user