Shared development workspace for the robotics runtime contracts and acceptance harness. The packages retain separate versions and distribution names:
robotics-runtime-contractsvalidates execution, evidence, and qualification documents.robotics-acceptance-harnessobserves existing executions and evaluates their evidence.
Runtime images and deployment compositions are maintained in robotics-runtime-infra.
Package source and history live in packages/contracts and packages/harness.
Historical release tags use the contracts-legacy/ and harness-legacy/ prefixes.
Package-specific documentation remains alongside each package.
Use Python 3.12–3.14 and uv. The workspace has one lockfile and installs both packages as editable distributions:
uv sync --locked --all-packages --all-groups
uv run --directory packages/contracts pytest
uv run --directory packages/harness pytest
uv run ruff check packages
uv run --directory packages/contracts mypy src tests
uv run --directory packages/harness mypy src tests
uv run python scripts/ci/check_complexity.pyRun the package test suites in separate processes: each package has its own
tests support module. Both distributions can be built independently:
uv build --package robotics-runtime-contracts --no-sources
uv build --package robotics-acceptance-harness --no-sourcesThe workspace source override is a development setting. Wheels retain normal versioned package dependencies and are checked in clean environments outside the workspace before publication.
The shared CI checks both packages on Python 3.12, 3.13 and 3.14, and runs the live ROS observer tests on ROS 2 Jazzy. Function complexity budgets keep existing debt visible and reject new violations or increases until the affected modules are refactored.