============ Contributing ============ Thank you for your interest in contributing to Cocoa. Contribution Policy -------------------- The authoritative contribution policy -- code style and naming conventions, commit message format, testing requirements, the pull request process, issue reporting, and licensing -- lives in ``CONTRIBUTING.md`` at the repository root. Read that file before opening a pull request; it is not duplicated here, because a duplicated policy drifts out of sync with the real one. Cocoa is proprietary (see ``LICENSE`` at the repository root); there is no public fork/GitHub workflow. Branch from ``main`` for a feature and follow the commit and pull request conventions in the root ``CONTRIBUTING.md``. Building and Testing --------------------- See :doc:`../getting_started/installation` for prerequisites and the full build procedure, and :doc:`testing` for how to run and extend the test suite. In short: .. code-block:: bash mkdir build && cd build cmake .. -DCMAKE_BUILD_TYPE=Debug -DBUILD_TESTING=ON make -j$(nproc) ctest --output-on-failure Where to Start --------------- - :doc:`architecture` for the module layout and library dependency structure. - :doc:`extending_model` for a worked example of adding a new physics term end to end (concept, GWCE/momentum contribution, config, tests). - :doc:`testing` for the reference validation new physics or numerics code is expected to satisfy, and how integration test references are regenerated.