BANOS is considered functionally complete. It implements a fixed set of metrics for evaluating behavioral annotations. We do not plan new features or major refactors. The codebase is intentionally stable — "stable by design" reflects the nature of the underlying metrics, which are defined in the accompanying paper.
Active window: During and shortly after paper publication, the maintainer actively monitors issues and reviews bug-fix PRs.
Maintenance mode: After the active window, BANOS enters maintenance mode. Only security issues and critical bugs (incorrect metric computations) will be addressed.
If you need features beyond the current scope, please fork the repository. The MIT license allows unrestricted use and modification — forking is a first-class option, not a workaround.
Benoit Girard (BelloneLab) Contact: open a GitHub Issue.
Open a GitHub Issue using the bug report template. Please include:
- BANOS version (
pip show banosor checkpyproject.toml) - Python version (or MATLAB version, if applicable)
- A minimal reproducible example (small CSV + code that demonstrates the wrong output)
- Fork the repository
- Create a branch for your fix
- Open a PR against
main - PRs are reviewed on a best-effort basis — there is no guaranteed turnaround time
Code style:
- Python: follow existing style enforced by
ruff(lint + format) - Use type hints consistent with the existing codebase
- Tests are required for bug fixes (see
tests/)
- Bug fixes (incorrect metric computations, edge case errors)
- Documentation improvements
- Test coverage improvements
- New metrics
- New features or API changes
- Performance optimizations beyond correctness
If your contribution falls into the second category, it is unlikely to be merged. Consider forking instead.
If you need features beyond the current scope, please fork. The MIT license allows unrestricted use and modification. Forks are encouraged — this is the intended path for extending BANOS.
See SETUP.md for instructions on setting up a local development environment.