Skip to main content

Explicit execution lifecycle state machines with immutable run receipts.

Project description

sheafruntime

sheafruntime is a dependency-free lifecycle core for a bounded sequence of execution stages. It does not run arbitrary work itself. Instead, it makes stage transitions explicit, prevents invalid ordering, and records a compact, immutable receipt for inspection or persistence.

from sheafruntime import Runtime

run = Runtime("image-ingest", ("fetch", "decode", "store"))
run.start("fetch")
run.succeed("fetch", output="sha256:abc")

run.start("decode")
run.succeed("decode")

assert run.receipt().completed == ("fetch", "decode")

Only the next pending stage may start. A started stage may succeed or fail; once a run fails, no subsequent state transition is permitted. This makes the library suitable as a small control boundary around workers, agent actions, or pipeline adapters without introducing a scheduler or framework.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sheafruntime-0.1.0a1.tar.gz (2.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sheafruntime-0.1.0a1-py3-none-any.whl (3.1 kB view details)

Uploaded Python 3

File details

Details for the file sheafruntime-0.1.0a1.tar.gz.

File metadata

  • Download URL: sheafruntime-0.1.0a1.tar.gz
  • Upload date:
  • Size: 2.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for sheafruntime-0.1.0a1.tar.gz
Algorithm Hash digest
SHA256 07f35b419d84e978aaa9cb8cd66f9ecfe88e21f686f6771a09890005a5a7fdda
MD5 60ff1576e404e3bcca0929fee6109c25
BLAKE2b-256 b2efde0e8a11fdcee7dd5358a5099470c0726c3b324011c01c1cb8a743f0dfef

See more details on using hashes here.

File details

Details for the file sheafruntime-0.1.0a1-py3-none-any.whl.

File metadata

  • Download URL: sheafruntime-0.1.0a1-py3-none-any.whl
  • Upload date:
  • Size: 3.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for sheafruntime-0.1.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 fe6117307d88adb7fdd324d9d52badea3ff67a794d022acccdc492fa3019644d
MD5 1be9d7f2affd1df283197a6c2119f088
BLAKE2b-256 9b81349f9bb328f23981894098cb90c7675ff268af37f34f41d8f0d008147573

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page