Skip to content

Development Setup

The Ontochoros packages are developed within Wise Ideas as a single uv workspace; this guide covers the toolchain and workflow shared by all of them. Bug reports are welcome on the issue tracker.

Toolchain

  • Python 3.11+ with uv
  • A Java 17+ runtime (runs ROBOT, the OWLAPI test oracle for Ontoplexis; dev-only, downloaded by make fetch-robot, never shipped)

Avoid snap-hosted toolchains

Install uv and Java outside any snap-packaged editor: snap-private tool installs disappear when the snap updates, silently breaking .venv interpreter symlinks.

Workflow

make sync                  # install the full workspace
make check                 # lockfile check, then ruff + ruff format --check + ty + pytest for every package
make check-<package>       # the same checks for one package, e.g. make check-ontoplexis
make test-<package>        # pytest only, e.g. make test-ontopoiesis
make docs                  # build this documentation site into site/
uv run zensical serve      # live-preview the site on localhost:8000

The Ontoplexis checks depend on the ROBOT oracle jar: round-trip tests skip when it is missing, so a full validation must download it first — make check-ontoplexis and make test-ontoplexis both do.

Releases

Each package releases independently via the manual release workflow; see the README for the process.

Package internals

Package-specific invariants and architecture notes live with each package: