← All features

Install and operateAvailable in v0.3.0

Development checks

For people changing oah itself: run the unit tests with Python 3.11 and again with the newest Python you have, with TMPDIR inside the checkout. CI tests macOS and Windows on every pull request to main, a separate workflow runs gitleaks and the privacy scan, and commits record their author engine with an Agent-Engine trailer.

When you need it

A tool that runs on two operating systems and guards secrets needs its own checks to run the same way for every contributor.

How it works

  1. Create .tmp/test-tmp and point TMPDIR at it so every test write stays inside the checkout.
  2. CI runs the tests on macOS and Windows for every pull request to main; pull requests that change only documentation skip the tests.
  3. A separate workflow runs gitleaks over the full history and the privacy scan on every pull request and push, documentation included.
  4. Before every push, python3 tools/privacy_scan.py --gitleaks require must print PRIVACY_SCAN_CLEAN.
  5. Commits carry an Agent-Engine: claude|codex|human trailer.

Example

Run oah's own test suite (from How it works › Development).

mkdir -p .tmp/test-tmp
TMPDIR="$PWD/.tmp/test-tmp" python3.11 -m unittest discover -s tests -t .

Requirements

  • Python 3.11 (and the newest Python you have) and gitleaks.

Limits and recovery

  • Python ignores a TMPDIR that does not exist, so create the folder first.
  • These checks cover oah's own repository; your project's CI comes from oah ci init.

Original documents

Related