Skip to main content

grain-contracts

Grain owns the workflow capability, so Grain publishes the words for it: protocol, run, gate, artifact, stop_reason.

This distribution carries only those types, with zero dependencies, so a service can speak Grain's vocabulary without installing Grain's CLI. grain-kit re-exports the same types from grain.contracts.workflow. Anything that wants to talk about a Grain workflow — a Postgres-backed Missions runtime, an agent driving Grain headlessly — imports these types rather than inventing a parallel set that drifts.

from grain_contracts.workflow import Run, StepRecord, Gate, RunStatus, StopReason

run = Run.from_dict(payload)          # payload is a grain.workflow-run/v1 mapping
if run.status is RunStatus.AWAITING_GATE:
    ...

Types only. No reducer, no store, no I/O — contracts share types, not code. The storage-agnostic run store and the pure advance() reducer are a separate promise, published as their own package.

Source and issues · MIT

Release files for grain-contracts 0.1.0

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

Source distribution (sdist)

Source distribution for grain-contracts 0.1.0
File Size Uploaded
grain_contracts-0.1.0.tar.gz 8.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for grain-contracts 0.1.0
File Interpreter ABI Platform
grain_contracts-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 16.5 kB

Release files / grain_contracts-0.1.0.tar.gz

Download URL grain_contracts-0.1.0.tar.gz
Size 8.8 kB
Tags Source
SHA-256 checksum
How to use checksums
2f8f5adac8c518fc5fda75ab8815581c5b4017574ab5e171209ad05377503e41
BLAKE2b-256 checksum
How to use checksums
1a769f61391969425c0b7f5d61bf2e10e83e757f9f8041f37e39302dc8251abe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / grain_contracts-0.1.0-py3-none-any.whl

Download URL grain_contracts-0.1.0-py3-none-any.whl
Size 7.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1137366ce245c9c7ed7b71e2491e76555e9e9434febb26e4c514566065a35c8c
BLAKE2b-256 checksum
How to use checksums
f2e85fc9c41313b939132ec83ec25c414d3c179719d591c802f2eb144ca67c75
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

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