Skip to content

Fix onboarding quickstart bugs and guard destructive cactus clean - #722

Merged
jakmro merged 1 commit into
mainfrom
fix/clean-guard-onboarding-docs
Jun 14, 2026
Merged

jakmro merged 1 commit into
mainfrom
fix/clean-guard-onboarding-docs

Conversation

@rshemet

@rshemet rshemet commented Jun 14, 2026

Copy link
Copy Markdown
Collaborator

Three low-lift fixes from a repo cleanliness pass. No C++ touched; Python + docs only.

Changes

1. README quick demo no longer leads with a broken command.
cactus transcribe requires --file (required=True), so the bare command in the Mac quick demo errored immediately. Dropped it; kept the working cactus run.

2. Linux install docs match setup's Python requirement.
setup hard-requires python3.12, but README (Step 0) and docs/quickstart.md told users to apt-get install python3 python3-venv, so source ./setup dead-ended with "python3.12 is not installed". Both now install python3.12/python3.12-venv. (README ASCII box re-padded to stay aligned.)

3. cactus clean no longer silently deletes weights + venv.
cmd_clean removes weights/, transpiled/, and venv/, but both help strings said only "delete build artifacts", with no confirmation. Downloaded weights are not re-fetched by setup, so this was permanent data loss.

  • Help now states it removes weights + venv.
  • Added --yes/-y to skip the prompt.
  • Before deleting, it lists the non-rebuildable targets and prompts [y/N]; on non-interactive stdin it refuses unless --yes is passed.

Testing

Targeted verification (the engine cactus test suite is C++-only and doesn't exercise CLI/docs):

  • cactus --help / cactus clean --help show the updated text and --yes/-y.
  • All three guard paths exercised with rmtree/unlink tripwires proving zero deletions: non-TTY refuse, interactive n abort (rc=0), --yes bypass.
  • weights/ + venv/ inodes and child counts identical before/after a guard run; repo integrity confirmed (only 4 files changed, no deletions).

- README: drop the broken `cactus transcribe` (errors without --file)
  from the Mac quick demo; keep the working `cactus run`.
- README + docs/quickstart.md: install python3.12/python3.12-venv on
  Linux to match setup's hard python3.12 requirement (docs said python3,
  so `source ./setup` dead-ended).
- cactus clean: stop silently deleting weights/, transpiled/, and venv/.
  Help now states it removes weights+venv; add --yes/-y; prompt for
  confirmation before deleting and refuse on non-interactive stdin
  unless --yes is passed.
@jakmro
jakmro merged commit e8c21df into main Jun 14, 2026
1 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants