{ "schema": "task-packet.v1", "task_id": "TP-PARITY-00", "status": "verified", "title": "Native LinuxCNC XYZAC per-tick oracle", "milestone": "M7-TP-NUMERICAL-PARITY", "context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1", "case": "linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/xyzac-trt.ini", "scope": "xyzac_only", "depends_on": ["RELEASE-00"], "direct_inputs": [ "run-5axis-rtcp.sh", "scripts/run_axis3_tutorial_native_sequence.py", "linuxcnc/src/emc/usr_intf/axis/extensions/emcmodule.cc", "linuxcnc/src/emc/task/taskintf.cc", "linuxcnc/src/emc/motion/motion.h", "linuxcnc/src/emc/tp/tp_debug.h", "linuxcnc/src/emc/tp/tp.c", "linuxcnc/src/emc/tp/tcq.c", "linuxcnc/src/emc/tp/tc.c", "doc-rtcp/xyzac-trt-full-tp-parity-plan.md" ], "required_outputs": [ "scripts/run_xyzac_native_tick_trace.py", "scripts/run_xyzac_wasm_tick_trace.mjs", "scripts/compare_xyzac_native_wasm_tick_trace.py", "coverage/xyzac-native-tick-trace.report.json", "coverage/xyzac-wasm-tick-trace.report.json", "coverage/xyzac-native-wasm-tick-parity.report.json", "coverage/task-packets/TP-PARITY-00.handoff.json" ], "observed": { "report": "coverage/xyzac-native-tick-trace.report.json", "report_sha256": "881571d0c75017a9610023a2d022d26606e653a0c62575563c0da7ada600e9a2", "row_count": 201, "first_blocker": null, "tick_source": "linuxcnc.stat.task_heartbeat", "tick_integrity": "strictly_monotonic", "wasm_comparator": {"status": "diverged", "first_divergent_tick": 1, "difference_path": "$.rows[1].exec_state", "report": "coverage/xyzac-native-wasm-tick-parity.report.json"} }, "acceptance": [ "run-5axis-rtcp.sh launches native LinuxCNC", "linuxcnc.stat captures task/interpreter/motion/queue/pose/joint/current-line fields", "tick source is native taskbeat or explicitly blocked with evidence", "empty queue and queue drain ticks are retained", "source/config/program hashes are recorded", "native trace report is self-hashed", "no claim of full parity before TP-PARITY-06 passes" ], "next_tasks": [ "TP-PARITY-01", "TP-PARITY-02", "TP-PARITY-03", "TP-PARITY-04", "TP-PARITY-05", "TP-PARITY-06", "TP-PARITY-07", "TP-PARITY-08" ], "known_blockers": [ "native stat API may not expose TP segment geometry; map motion_id and retain explicit unavailable field", "native GUI process requires DISPLAY and cleanup", "full LinuxCNC TP source integration may require ABI-compatible C port rather than simplified queue extension", "native/WASM comparator currently diverges at current-line scheduling before TP numeric parity can be promoted" ], "release_status": "STOP_RELEASE" }