Skip to main content

oro-env-runtime

Portable sealed-pack execution and verification for ORO environments.

Requires Python 3.11 or newer and is distributed under the MIT License.

pip install oro-env-runtime

Public API

  • TaskSession(epoch_dir, task_id, ...): opens one task of a sealed pack. policy_view() returns the task query, tool schemas and contract versions; step() and step_parallel() run one ordered action group and return observation, done and error per call; run() runs the managed solver and shopper-simulator loop; verdict() returns the VerifierResult.
  • validate_epoch(epoch_dir): fails closed unless the pack's file set, checksums, manifest contracts and task schemas are valid.
  • build_delivery_subset_archive(...): builds deterministic qualifying or race delivery bytes from a parent pack. validate_delivery_binding(...) checks those bytes against the scope and roster they were authorized for.
  • replay_actions, make_replay_artifact, validate_replay_artifact: deterministic replay of recorded action groups.
  • failure_classes(verdict, situation): see below.

step() and step_parallel() do not deliver queued shopper lines, and an order is refused with line_pending while one is unsaid. An adapter with its own turn boundary runs each turn in this order, as replay_actions does: session.env.begin_solver_turn(n) for the coming turn (n = session.solver_turn_count + 1); then oro_env_runtime.loop.reword_utterances and say_utterances to deliver the lines that boundary fired; then step_parallel(group); then reword_utterances and say_utterances again for lines the group fired. Shopper replies are recorded with oro_env_runtime.loop.record_user_message.

A pack is a directory with exactly manifest.json, checksums.sha256 and data/tasks/private_tasks.jsonl. TaskSession caches each file digest while its size and mtime_ns are unchanged, so consumers must mount each pack on a read-only or otherwise immutable filesystem for the full execution lifetime.

Contract versions

Contract Version
Pack format oro_compiled_epoch_v7
Environment oro.env.v3
Runtime 0.3.4
Tools oro_task_tools_v6
Verifier 0.4.0
Result schema v2
Delivery subset oro.delivery_subset.v1

The event and replay contract versions are exported from oro_env_runtime.contracts. These are execution compatibility identities, separate from the package version.

Failure feedback

failure_classes(verdict, situation) returns {"primary", "categories"} for one episode. verdict is the validator's episode result (outcome and the verifier result under verdict) or a verifier result alone; situation is the episode task's own situation. categories follow the order of oro_env_runtime.failure.CATEGORIES and primary is the first: did_not_finish (no order placed, or the agent errored), request_not_met, needs_not_found, changes_missed, process_issue, not_best_option, extra_questions. infrastructure (an environment or verifier error, or a missing or ungradable verdict) is never the miner's failure and is then the only entry.

Releasing

Bump project.version in pyproject.toml in a reviewed pull request. Merging it to main tags runtime-vMAJOR.MINOR.PATCH and publishes to PyPI. PyPI releases are immutable: fix a bad release with a new version.

Metadata

Release files for oro-env-runtime 3.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for oro-env-runtime 3.0.2
File Interpreter ABI Platform
oro_env_runtime-3.0.2-py3-none-any.whl Python 3 none any Details

Release files / oro_env_runtime-3.0.2-py3-none-any.whl

Download URL oro_env_runtime-3.0.2-py3-none-any.whl
Size 76.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1b1e19608b95504b6a588bd048de2283dd8291225ec42453f2a80de32e63da65
BLAKE2b-256 checksum
How to use checksums
541a730ee1b4be76b9364f28ece77b686097c4f7fd237d613faf98d49c42cc57
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 1, 2026.

Transparency log

Release history Release notifications | RSS feed

3.7.1

1 release file

3.7.0

1 release file

3.6.0

1 release file

3.5.0

1 release file

3.4.0

1 release file

3.3.0

1 release file

3.2.0

1 release file

3.1.0

1 release file

3.0.3

1 release file

This release

3.0.2 This release

1 release file

2.0.1

1 release file

1.0.7

1 release file

1.0.6

1 release file

1.0.5

1 release file

1.0.4

1 release file

1.0.3

1 release file

1.0.2

1 release file

1.0.1

1 release file

1.0.0

1 release file

0.2.18

1 release file

0.2.16

1 release file

0.2.15

1 release file

0.2.14

1 release file

0.2.13

1 release file

0.2.12

1 release file

0.2.11

1 release file

0.2.10

1 release file

0.2.9

1 release file

0.2.7

1 release file

0.2.5

1 release file

0.2.4

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.2.0

1 release file

0.1.1

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page