Contributing
|||
How to contribute to INDW: development setup, code standards, and pull request process.
INDW welcomes contributions to pipeline stages, quality profiles, documentation, and test coverage. All pipeline changes must preserve determinism and backend parity.
Development setup
bash
Before submitting
Run the validation suite:
bash
For pipeline logic changes, also run:
bash
Code standards
- Preserve determinism: same config + input = same output hash
- Backend-agnostic stage logic: no backend-specific code in stage pools
- Operational readability: short names, no tutorial comments
- Type annotations on public APIs and configuration boundaries
- Tests for new gates, thresholds, and stage behavior
Pull request checklist
-
indw test --profile unitpasses -
indw test --profile criticalpasses (for pipeline changes) -
indw validatepasses (for scheduler/filter/clean changes) - New behavior has test coverage in
tests/subsystems/ - Quality profile changes documented if user-facing
- No secrets or credentials in committed files
Project structure
text
Reporting issues
Report bugs through the project issue tracker. Include:
- INDW version (
indw doctor) - Quality profile used
- Minimal reproduction corpus (or synthetic example)
- Expected vs actual output hash
Security disclosures follow SECURITY.md.
License
Contributions are licensed under Apache-2.0. See LICENSE.