code wiki / _hdl_build / nx_cook_coach.nx

nx_cook_coach.nx

buildroot/runtime/_hdl_build/nx_cook_coach.nx

9777 B145 linesdepth 4pulls 6 transitivereach 0 importersview sourcekind tool
docsdependenciesstructsconstsfunctions

about

nx_cook_coach.nx -- COOKING as a discipline of the EXISTING curriculum coach. No new engine. nx_coach_curriculum_lib already does the whole loop: serve a framework's required elements, take a SELF-REPORT of which ones you actually did, name what was missing, hand back that element's drill. Its own header says it: "coaching is coaching -- same loop, self-report instead of a sensor." Knife technique is structurally identical to its NVC framework: the required elements are the target chord, what you did is the played notes, missing is the gap. So cooking is ROWS, not code. This file is a data seeder and a self-gate. THE SKILL IDS ARE THE JOIN. dice-onion / chop-veg / sear / braise are the same ids nx_meal_effort uses in its skill tree, so the coach and the opportunity-cost engine talk about the same skill: assessed level drives how long a step takes, which drives whether cooking the dish is the right call at all. Different ids here would have quietly produced two unrelated systems that both looked right. WHY SELF-REPORT AND NOT VIDEO. nx_pose_coach can already compare a pose track to a reference and name the worst joint. What does NOT exist is video -> keypoints: nx_video_pose_coder declares itself PARTIAL_WIRED with VIDEO_DECODE / NEURAL_NET_INFERENCE / POSE_KEYPOINT_DETECTION missing, and nx_pose_estimate caps itself at coarse single-joint classification on our own renders. So the honest coaching surface today is the checklist, and the camera path stays closed until the tracks are real. argv[1] = store prefix (default: the live coach-curriculum plane). Pass a /tmp prefix to gate cleanly. license_tier: ORIGINAL No hw writes (Rule 26).

dependencies 3 imports · 0 importers

nx_coach_curriculum_lib.nx nx_gate_verdict.nx nx_syscalls.nx nx_cook_coach.nx

imports: nx_coach_curriculum_lib.nxnx_gate_verdict.nxnx_syscalls.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main gv_ctr sys_mmap nxa_die sys_write sys_exit nxa_lock_take nxa_lock_addr sys_write ↻ nxa_lock_give nxa_lock_addr ↻ nxa_report_overrun sys_write ↻ nxa_dump_printable sys_write ↻ nxa_dump_sizes sys_write ↻ gv_head gv_puts sys_write ↻ cook_seed ss_begin ss_begin_cap sys_mmap ↻ cc_add ss_add ss_add2 ss_w32 ss_len cc_slen ss_commit ss_segid_ok ss_commit_body ss_segid_ok ↻ sys_mmap ↻ ss_cat ss_catn sys_mmap ↻ sys_write ↻ ss_write_seg

structs

none

consts

none

functions

28func cook_seed(prefix: *u8) -> i64
84func main(argc: i64, argv: *i64) -> i64