Thank you for your interest in contributing to the Gap Score Specification! This is an open specification and contributions are welcome.
The specification (SPEC.md) is the core artifact. Changes to the spec affect all conforming implementations.
- Open an issue first to discuss the proposed change before submitting a PR
- Explain the motivation and any impact on existing conformance levels
- Include worked examples if the change affects the formula or protocol
Reference validators in additional languages are welcome. PRs for Go, Rust, TypeScript, and other languages are encouraged.
Requirements for new validators:
- Must conform to the current spec version
- Must handle the same input format as the existing validators (or document differences)
- Must produce output conforming to
validators/gap-report-schema.json - Must include unit tests
- Must pass against all examples in
examples/
If you're using Gap Score in your project, add it to the Adopters table in README.md:
- Fork the repository
- Add your project to the table with conformance level and description
- Submit a PR
Found an inconsistency, typo, or bug in a validator? Open an issue with:
- What you expected
- What actually happened
- Steps to reproduce (if applicable)
git clone https://github.com/DUBSOpenHub/gap-score-spec.git
cd gap-score-spec
# Run the validator unit tests
python -m pytest validators/test_gap_score.py -v
# Run a validator against an example
python validators/gap-score.py \
--sealed examples/02-minor-gaps/sealed-results.json \
--open examples/02-minor-gaps/open-results.json \
--format summaryBe respectful, constructive, and collaborative. We're building an open standard — thoughtful disagreement is welcome, personal attacks are not.
By contributing, you agree that your contributions will be licensed under the MIT License.