Files
ausboss-ComfyUI-AusBoss/CONTRIBUTING.md
T
ausboss 0532757b10 Keep Frame's resize inputs optional and pin the node API
Video Crop + Rotate + Pad -> Frame had gained its four resize inputs as
required, so an API prompt saved before them stopped validating. They
are optional now; the widget order is unchanged.

tests/test_node_api.py loads the pack the way ComfyUI does and holds every
node to tests/fixtures/node_api.json: inputs and outputs may only be
appended, never renamed, reordered, removed or newly required. Its rule
tests need only the standard library and run in CI.
2026-09-24 15:11:22 -05:00

1.6 KiB

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 instead of a public issue.

Pull requests

  • The working rules are in AGENTS.md, and a new public node follows docs/adding_a_node.md. Experiments usually start in a separate lab pack, so 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.

    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 describes the headless browser harness and what to screenshot.