Skip to content

Latest commit

 

History

History
46 lines (39 loc) · 2.05 KB

File metadata and controls

46 lines (39 loc) · 2.05 KB

Contributing to Ozzit

ozzit.xlsx is the shipped authority. src/*.txt, the AFE store and functions.csv are bound publication views and must agree with the same workbook commit. Do not hand-edit or submit one view alone; follow the source-owning process in tools/postbuild/README.md for a formula change: sync the AFE store after any src/ change, and sanitise the workbook last.

Cached formula results may change only with Excel-backed recalculation evidence. Do not claim a cache refresh from XML tooling: it has no formula engine. Before the native Excel gates, ensure no user Excel process is running and do not close or attach to one. Follow the evidence, hash and Excel-version requirements in RELEASING.md.

Run the CI sequence exactly before submitting a change. The first 4 commands are the lint job; the rest run on Python 3.14. Install the git hooks once with python -m pip install pre-commit && pre-commit install; they run the pinned ruff check on staged files.

python -m pip install "ruff==0.16.6"
python -m ruff check .
python -m pip install "mypy==2.3.1"
python -m mypy --config-file mypy.ini
python tools/verify_workbook.py ozzit.xlsx
python tools/verify_sources.py ozzit.xlsx src
python tools/verify_signatures.py src
python tools/verify_previous_names.py functions.csv
python tools/verify_index.py ozzit.xlsx src functions.csv
python tools/verify_cover.py ozzit.xlsx functions.csv CHANGELOG.md
python tools/verify_afe.py ozzit.xlsx src
python tools/verify_help_spills.py ozzit.xlsx
python tools/verify_native_evidence.py
python -m unittest discover -s tools/tests -v

For a workbook change, also run the native Excel self-test and cached-value gate named in RELEASING.md. Release preparation, tagging and publication are governed solely by that document and require the stated human approval.

For a change to templates/13-week-cash-flow-forecast.xlsx, also run its separate native gate after confirming no Excel process is running:

powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\tools\excel_cash_flow_selftest.ps1