Comfy-Org / Comfy-Org/comfy-cli

`execute` (complexity 48) and `execute_cloud` (44) in `command/run/__init__.py`

Open
#726 2 comments 1 reaction 1 assignee Claimed by @christian-byrne View on GitHub
audit:architecture effort:large priority:recommended
Dominant language
Python
Stars
968
Forks
151
Avg merge
1d 9h
Merged PRs (30d)
77

Description

**What** — The two functions on the CLI's primary command path score 48 and 44 on cyclomatic complexity, against a conventional threshold of 10. They are the top two of 90 `C901` violations repo-wide; the next worst are 36 (`command/generate/app.py:_generate`) and 35 (`command/models/models.py:download`).

**Why it matters here** — `comfy run` is the command most users reach for, and its two implementations are the least testable code in the repo. At complexity 48 the branch count is beyond what a test suite can cover exhaustively, so behaviour changes there are effectively unverifiable — which is a bad property for the path that talks to both local and cloud execution. The two functions being near-twins at 48 and 44 also suggests shared structure worth extracting rather than two independent rewrites.

**Evidence**

```
$ ruff check --select C901 --output-format concise comfy_cli | sort -t'(' -k2 -rn | head -4
comfy_cli/command/run/__init__.py:204:5: C901 `execute` is too complex (48 > 10)
comfy_cli/command/run/__init__.py:890:5: C901 `execute_cloud` is too complex (44 > 10)
comfy_cli/command/generate/app.py:481:5: C901 `_generate` is too complex (36 > 10)
comfy_cli/command/models/models.py:334:5: C901 `download` is too complex (35 > 10)

$ ruff check --select C901 comfy_cli 2>&1 | tail -1
Found 90 errors.
```

**Fix**

Not a single-PR job. Suggested order: diff `execute` against `execute_cloud` to find the shared skeleton, extract it, then peel argument validation and output formatting out of both. Add `C901` to ruff with `max-complexity` set at the current worst value so it ratchets down instead of failing on day one.

---

Found by `repo-audit` during repo improvement sweep 2026-08-17. Parent: #723

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.