harness/publish.shRegenerates the Manual and commits the run to git.
publish.sh LABEL [KIND], KIND one of close, interview,
pause, finished (close.sh passes
interview-point at an interview cut). It runs
gen_manual.py, then, if the run sits in a git repository,
git add -A, commits "
close.sh and interview.sh call it; never
typed by hand.
Its header: a failed push "is reported and never fails the close".
The repository's .gitignore decides what is committed. It
keeps the run's Claude folder, CONTROL/.cc, out; each
checkpoint's agent.tar.gz holds only the run's own sessions
from it (projects/run/), so no account data is committed
(the handlers).
Checked against: harness/publish.sh, harness/close.sh, harness/interview.sh.