tools/steps.pyParses stage and leg ids against steps.tsv.
Commands: check <leg> (one line: stage, kind,
interview, round, label; or exit 1); stages;
steps <stage>; label <leg> (for
example B1b-03_coding-third-order-scheme_getting-lost);
name <stage>;
first <stage> <kind>. A leg id is the stage,
the step letter, and a count where the step repeats: B1a,
B1b-03, B2a-r1, D1a-02, and
-p2 for a leg continued after a pause.
Shipped in the analyst's tools/. build.sh
copies it with steps.tsv into
CONTROL/harness/, where lib.sh uses it;
done.sh uses it to check an interview cut.
STANDING §2: "The harness names the leg in your first message and in
.leg; every snap, probe and checkpoint carries that name."
READ-ME-FIRST: a leg id that does not name a step of its stage is
refused.
Checked against: tools/steps.py, harness/lib.sh, tools/done.sh, STANDING-INSTRUCTIONS.md §2, harness/READ-ME-FIRST.md.