44 lines
1.7 KiB
Markdown
44 lines
1.7 KiB
Markdown
# Contributing
|
|
|
|
Bug reports, workflow ideas and pull requests are welcome.
|
|
|
|
## Reporting a problem
|
|
|
|
The most useful report names:
|
|
|
|
- the ComfyUI and frontend versions (Settings → About),
|
|
- the pack version from the console banner (`AusBoss vX.Y.Z | N nodes loaded`),
|
|
- the node, what you expected, and what happened instead,
|
|
- the smallest workflow that shows it, plus a screenshot for anything visual.
|
|
|
|
Security problems go through [SECURITY.md](SECURITY.md) instead of a public
|
|
issue.
|
|
|
|
## Pull requests
|
|
|
|
- The contributor guide is [AGENTS.md](AGENTS.md), and a new public node
|
|
follows [docs/adding_a_node.md](docs/adding_a_node.md). A new node is a
|
|
conversation before it is a pull request.
|
|
- Mapping keys, input names and order, and output order are a permanent API:
|
|
saved workflows depend on them. Append optional inputs and outputs instead
|
|
of renaming or reordering. `tests/test_node_api.py` checks this against a
|
|
snapshot; its docstring shows how to refresh the snapshot after a
|
|
compatible change.
|
|
- Leave `version` in `pyproject.toml` alone. A version change that reaches
|
|
`main` publishes to the Comfy Registry.
|
|
- Run the offline checks. None of them needs a GPU; the Python tests need
|
|
ComfyUI's Python environment.
|
|
|
|
```bash
|
|
python scripts/validate_nodes.py
|
|
python scripts/release_preflight.py
|
|
python scripts/run_python_tests.py
|
|
node --test tests/*.test.mjs
|
|
```
|
|
|
|
- Frontend changes are checked on a real canvas as well as in tests.
|
|
[docs/live_testing.md](docs/live_testing.md) describes the headless browser
|
|
harness and what to screenshot.
|
|
- A fix PR says what was wrong, adds a test that fails before the fix and
|
|
passes after it, and shows before/after results.
|