* docs: verify and complete project documentation (#31) Align the docs with the shipped V1 implementation (MASTER_SPEC §7.6, Phase 7). - README: fix the Category Splitter output (it emits a Category Map; the per-category strings are produced by the Prompt Builder). - docs/nodes.md: developer node reference with the exact inputs, outputs, and inter-stage data types for all eight nodes. - CONTRIBUTING.md: link the Knowledge Base contribution guide and validation command, the golden-regeneration note, and the node/benchmark references. - tests/test_docs_consistency.py: guards that README and docs/nodes.md mention every registered node and cover the inter-stage types, and that CONTRIBUTING links the Knowledge Base guide -- so docs cannot drift from the code. The wiki ComfyUI-Nodes page is updated to match (Category Splitter emits a Category Map) in the wiki repository. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * chore: retrigger CI (runner backlog) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: kunail0804 <kunail0804@gmail.com> Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
1.8 KiB
1.8 KiB
Contributing
Full contributor guidelines live in the project wiki:
Development, Testing & Contributing.
The authoritative specification is MASTER_SPEC.md (see §24–§28).
Local setup
Requires Python 3.11+.
git clone https://github.com/kunail0804/ComfyUI-Scene-Compiler.git
cd ComfyUI-Scene-Compiler
python -m pip install -e ".[dev]"
Checks
Run the same checks CI runs before opening a pull request:
ruff check . # lint
ruff format --check . # formatting
pytest # tests
Ground rules
- Determinism first — identical input + Knowledge Base + config always produces identical output. No randomness.
- No hardcoded tag mappings — concept-to-tag knowledge lives in
knowledge_base/. - Separation of concerns —
compiler/never imports ComfyUI;nodes/contains no compiler logic. - Tests ship with code — new functionality includes tests; every bug fix adds a regression test.
- Explicit type hints on public functions, docstrings, and structured logging (no
print).
Contributing to the Knowledge Base
The Knowledge Base is data, not code. To add or edit a concept, follow the field
rules and file layout in knowledge_base/README.md,
then validate your change:
python scripts/validate_knowledge_base.py knowledge_base/
A change that alters compiler output must also update the golden files
deliberately (see tests/regression/golden/README.md).
Node and developer reference
- ComfyUI node inputs/outputs:
docs/nodes.md - Performance baselines:
docs/benchmarks.md