Auwai

Testing

The test suite uses unittest. No external service and no model are needed.

Run

python3 -m unittest discover -s tests

A single file:

python3 -m unittest tests.test_ledger -v

A single test:

python3 -m unittest tests.test_architecture.SurveyTest.test_survey_json_has_scope_tree_and_plan

Coverage of the new architecture

The suite also covers the index, refresh, plan, session, workspace, MCP, and providers. The default run is standard-library only; database, queue, host-CLI, and Node tests skip cleanly when their environment is absent.

External test environments

POSTGRES_URL=... MYSQL_URL=... MARIADB_URL=... \
  python3 -m unittest tests.test_knowledge_service tests.test_backend_migrations

The URLs must point at disposable databases. CI uses service containers for PostgreSQL 16, MySQL 8.4, and MariaDB 11.4. Node is required for the OpenCode guard vectors; openssl is required for the TLS proxy test.

What is not tested

The quality harness itself is tested offline with a fixed rubric and a fake model command. The live answer-quality run is recorded under benchmarks/quality/.

Acceptance

A change is ready when: