Ota v1.6.17 Now available
v1.6.17 hardens scoped requirement resolution, deterministic bootstrap, and machine-stable readiness output for humans and agents.

Idea
v1.6.17 is a trust release.
Pressure-testing across real repositories exposed a recurring pattern: readiness contracts looked valid, but selected execution paths were still too easy to misread or over-assume. Host-only tools could show up in unrelated container/remote previews, task-path tool requirements could depend on duplicate global declarations, and agent-safe guarantees were not strict enough across transitive task chains.
That kind of ambiguity is expensive. Humans lose time. CI becomes noisy. Agents take riskier actions than the contract author intended.
The goal for this release was simple: make the selected path explicit, make bootstrap deterministic, and make safety boundaries enforceable.
Feature
v1.6.17 ships a focused set of platform-level improvements:
- Scoped requirement resolution for selected task/workflow paths: container and remote paths no longer inherit host-global
toolsfallback when scoped requirements are present. - Task-scoped tool gates:
tasks.<name>.requirements.toolsandrequirements.any_of[].toolsnow validate as self-contained gates without forcing duplicate top-level tool declarations. - Clearer dry-run context semantics: preview output now separates Task Context from Execution Context, and JSON includes additive
requested_contextandselected_context. - Stronger agent-safe validation: write-boundary checks now walk transitive task chains, so safe-task declarations fail when reachable dependencies violate protected or writable-path boundaries.
- First-class deterministic bootstrap actions:
ensure_env_file,ensure_file, andensure_directoryremove shell glue for common bootstrap cases. - Expanded readiness and conditional checks:
checks[].kind: changed_files,services.*.readiness.kind: compose_health, and multi-surface runtime readiness viasignal_probes. - Schema-first JSON validation in CI:
ota json validatenow supports both command-execution and artifact-first (--input) validation paths.
This release is about reducing hidden assumptions. Contracts now express alternative requirement branches more cleanly (any_of), readiness checks are more precise, and dry-run output is safer for both humans and automation.
Docs
If you want to adopt these capabilities directly, use the live docs:
- Get Started: Install Ota and run
ota doctorfirst in your repo. - Contract reference: Contract (
requirements,any_of,effects,services,agent). - Command reference: Commands (
ota run,ota up,ota doctor,ota tasks,ota json validate). - Workflow modeling: Workflows for readiness and execution intent.
Release
v1.6.17 is live here: https://ota.run/releases/v1.6.17
If you already use Ota, upgrade and verify:
ota --versionota validateota doctorota run <task> --dry-run --jsonIf you are evaluating Ota for the first time, this is a strong version to start with: the execution path is clearer, bootstrap is more deterministic, and the agent boundary model is stricter where it matters most.
Take action