Files
kunail0804-ComfyUI-Scene-Co…/CONTRIBUTING.md
T
72a60aa28b chore: initialize repository structure and tooling (#1) (#45)
Scaffold the Phase 0 foundation per MASTER_SPEC §24:

- Directory layout: nodes/, compiler/{analyzer,validator,resolver,splitter,
  builder,common}/, knowledge_base/, schemas/, prompts/, config/,
  tests/{analyzer,resolver,validator,integration,regression}/, examples/,
  scripts/, docs/.
- pyproject.toml targeting Python 3.11+, jsonschema as the single runtime dep,
  ruff + pytest as dev deps, explicit package list, and ruff/pytest config.
- ruff for linting and formatting; pytest with repo root on pythonpath.
- GitHub Actions CI running install, ruff lint, ruff format check, and pytest
  on Python 3.11 and 3.12 for pushes and pull requests.
- docs/ skeleton and CONTRIBUTING.md referencing the wiki.
- Layout test asserting the §24 structure and package importability.

Co-authored-by: kunail0804 <kunail0804@gmail.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-07 16:59:32 +02:00

37 lines
1.2 KiB
Markdown

# Contributing
Full contributor guidelines live in the project wiki:
[Development, Testing & Contributing](https://github.com/kunail0804/ComfyUI-Scene-Compiler/wiki/Development-Testing-and-Contributing).
The authoritative specification is [`MASTER_SPEC.md`](MASTER_SPEC.md) (see §24–§28).
## Local setup
Requires **Python 3.11+**.
```bash
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:
```bash
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`).