LICENSE
README.md
pyproject.toml
src/pystator/__init__.py
src/pystator/builder.py
src/pystator/cli.py
src/pystator/idempotency.py
src/pystator/observability.py
src/pystator/py.typed
src/pystator/visualization.py
src/pystator.egg-info/PKG-INFO
src/pystator.egg-info/SOURCES.txt
src/pystator.egg-info/dependency_links.txt
src/pystator.egg-info/entry_points.txt
src/pystator.egg-info/requires.txt
src/pystator.egg-info/top_level.txt
src/pystator/actions/__init__.py
src/pystator/actions/executor.py
src/pystator/actions/registry.py
src/pystator/actions/retry.py
src/pystator/api/__init__.py
src/pystator/api/main.py
src/pystator/api/dependencies/__init__.py
src/pystator/api/dependencies/core.py
src/pystator/api/dependencies/database.py
src/pystator/api/models/__init__.py
src/pystator/api/models/requests.py
src/pystator/api/models/responses.py
src/pystator/api/routes/__init__.py
src/pystator/api/routes/v1/__init__.py
src/pystator/api/routes/v1/machines.py
src/pystator/api/routes/v1/process.py
src/pystator/api/routes/v1/settings.py
src/pystator/api/routes/v1/templates.py
src/pystator/api/services/__init__.py
src/pystator/api/services/fsm_service.py
src/pystator/config/__init__.py
src/pystator/config/converter.py
src/pystator/config/database.py
src/pystator/config/loader.py
src/pystator/config/models.py
src/pystator/config/validator.py
src/pystator/contrib/__init__.py
src/pystator/contrib/order/__init__.py
src/pystator/contrib/order/fsm/order_fsm.yaml
src/pystator/contrib/rebalance/__init__.py
src/pystator/contrib/rebalance/fsm/rebalance_fsm.yaml
src/pystator/core/__init__.py
src/pystator/core/errors.py
src/pystator/core/event.py
src/pystator/core/invoke.py
src/pystator/core/machine.py
src/pystator/core/parallel.py
src/pystator/core/state.py
src/pystator/core/state_hierarchy.py
src/pystator/core/state_store.py
src/pystator/core/transition.py
src/pystator/db/__init__.py
src/pystator/db/base.py
src/pystator/db/migrations/env.py
src/pystator/db/migrations/versions/20260130000000_initial_machines.py
src/pystator/db/migrations/versions/__init__.py
src/pystator/db/models/__init__.py
src/pystator/db/models/machine.py
src/pystator/guards/__init__.py
src/pystator/guards/builtins.py
src/pystator/guards/evaluator.py
src/pystator/guards/registry.py
src/pystator/orchestration/__init__.py
src/pystator/orchestration/invoke.py
src/pystator/orchestration/orchestrator.py
src/pystator/recipes/__init__.py
src/pystator/recipes/actions.py
src/pystator/recipes/context.py
src/pystator/recipes/guards.py
src/pystator/recipes/utils.py
src/pystator/scheduler/__init__.py
src/pystator/scheduler/asyncio_scheduler.py
src/pystator/scheduler/base.py
src/pystator/scheduler/celery_scheduler.py
src/pystator/scheduler/redis_scheduler.py
src/pystator/timeout/__init__.py
src/pystator/timeout/manager.py
src/pystator/ui/__init__.py
src/pystator/ui/build.py
src/pystator/ui/dev.py
src/pystator/ui/server.py
src/pystator/ui/node_modules/flatted/python/flatted.py
src/pystator/ui/node_modules/katex/src/fonts/generate_fonts.py
src/pystator/ui/node_modules/katex/src/metrics/extract_tfms.py
src/pystator/ui/node_modules/katex/src/metrics/extract_ttfs.py
src/pystator/ui/node_modules/katex/src/metrics/format_json.py
src/pystator/ui/node_modules/katex/src/metrics/parse_tfm.py
src/pystator/ui/static/404.html
src/pystator/ui/static/__next.__PAGE__.txt
src/pystator/ui/static/__next._full.txt
src/pystator/ui/static/__next._head.txt
src/pystator/ui/static/__next._index.txt
src/pystator/ui/static/__next._tree.txt
src/pystator/ui/static/index.html
src/pystator/ui/static/index.txt
src/pystator/ui/static/404/index.html
src/pystator/ui/static/_next/static/DyvpgK-tq0OQTBk0YjFbS/_buildManifest.js
src/pystator/ui/static/_next/static/DyvpgK-tq0OQTBk0YjFbS/_clientMiddlewareManifest.json
src/pystator/ui/static/_next/static/DyvpgK-tq0OQTBk0YjFbS/_ssgManifest.js
src/pystator/ui/static/_next/static/chunks/0346df7323977856.js
src/pystator/ui/static/_next/static/chunks/0356b23e9d8fbd11.js
src/pystator/ui/static/_next/static/chunks/05be8470af537e1f.js
src/pystator/ui/static/_next/static/chunks/0ac2c33f74cfed15.js
src/pystator/ui/static/_next/static/chunks/0bfe49840fbc4485.js
src/pystator/ui/static/_next/static/chunks/14ee60c559c10e39.js
src/pystator/ui/static/_next/static/chunks/1bdb5b021c9a4e61.js
src/pystator/ui/static/_next/static/chunks/1e292d5d733c226f.js
src/pystator/ui/static/_next/static/chunks/20c1169c30c95e0f.js
src/pystator/ui/static/_next/static/chunks/27f5fab49d8a5395.js
src/pystator/ui/static/_next/static/chunks/27faeef6a6f62be6.js
src/pystator/ui/static/_next/static/chunks/2924b41ac1069113.js
src/pystator/ui/static/_next/static/chunks/2c59ea1b8d376246.js
src/pystator/ui/static/_next/static/chunks/32034ee0bead329c.js
src/pystator/ui/static/_next/static/chunks/33080e01ef6fbe50.js
src/pystator/ui/static/_next/static/chunks/339aa73c1f12c943.js
src/pystator/ui/static/_next/static/chunks/3c5647e7277e8f03.js
src/pystator/ui/static/_next/static/chunks/3d61fa548e85ff22.js
src/pystator/ui/static/_next/static/chunks/45f91591becf20cf.js
src/pystator/ui/static/_next/static/chunks/46d959abf8046f0e.js
src/pystator/ui/static/_next/static/chunks/4b94d82681e3486f.js
src/pystator/ui/static/_next/static/chunks/512bb129be1beca5.js
src/pystator/ui/static/_next/static/chunks/581c7f8a86cc86fb.js
src/pystator/ui/static/_next/static/chunks/5eac621951969859.js
src/pystator/ui/static/_next/static/chunks/6370363af148353a.js
src/pystator/ui/static/_next/static/chunks/66b0dbbf4f62f3e9.js
src/pystator/ui/static/_next/static/chunks/6716c4894e74365d.js
src/pystator/ui/static/_next/static/chunks/6db641e351dac854.js
src/pystator/ui/static/_next/static/chunks/6f4c5a75f38f686b.js
src/pystator/ui/static/_next/static/chunks/6fee5c7b5d483c8a.js
src/pystator/ui/static/_next/static/chunks/762121739217e5da.js
src/pystator/ui/static/_next/static/chunks/763b6fdc295920b2.js
src/pystator/ui/static/_next/static/chunks/78c1f17102e06f66.js
src/pystator/ui/static/_next/static/chunks/79587e7af34d14c5.css
src/pystator/ui/static/_next/static/chunks/7db611d1af3286e8.js
src/pystator/ui/static/_next/static/chunks/7f52f8900b256e8a.js
src/pystator/ui/static/_next/static/chunks/80d338b58d217596.js
src/pystator/ui/static/_next/static/chunks/81a54ecd0b78254e.js
src/pystator/ui/static/_next/static/chunks/82abf2d65f5428ae.js
src/pystator/ui/static/_next/static/chunks/8321c26033c9fc5b.js
src/pystator/ui/static/_next/static/chunks/835538e414a04579.js
src/pystator/ui/static/_next/static/chunks/89ebb4231102677a.js
src/pystator/ui/static/_next/static/chunks/8eb618fa92112394.js
src/pystator/ui/static/_next/static/chunks/8f8ffc94517fa46d.js
src/pystator/ui/static/_next/static/chunks/9525dc246b363870.js
src/pystator/ui/static/_next/static/chunks/999c3cd4c965bbf4.js
src/pystator/ui/static/_next/static/chunks/9b682520383c8309.js
src/pystator/ui/static/_next/static/chunks/a4eab16b7dcd4e33.js
src/pystator/ui/static/_next/static/chunks/a6842f1cdf5ef8ca.js
src/pystator/ui/static/_next/static/chunks/a6dad97d9634a72d.js
src/pystator/ui/static/_next/static/chunks/a6dad97d9634a72d.js.map
src/pystator/ui/static/_next/static/chunks/ae52f8e72d4127b1.js
src/pystator/ui/static/_next/static/chunks/af66c50a65af610b.js
src/pystator/ui/static/_next/static/chunks/b8b36494d4330f5f.js
src/pystator/ui/static/_next/static/chunks/b8ca88454bfa8e05.js
src/pystator/ui/static/_next/static/chunks/be28d13ded360528.js
src/pystator/ui/static/_next/static/chunks/c231010aae14914b.js
src/pystator/ui/static/_next/static/chunks/c2914ad6bed1375c.js
src/pystator/ui/static/_next/static/chunks/c9e5b02af5ab7646.js
src/pystator/ui/static/_next/static/chunks/cb863a7e46548566.js
src/pystator/ui/static/_next/static/chunks/d5b700b8aafeea3b.js
src/pystator/ui/static/_next/static/chunks/dc16aeb5aabadbd8.js
src/pystator/ui/static/_next/static/chunks/de9c5219846f92bb.js
src/pystator/ui/static/_next/static/chunks/e421baf376f9bdff.js
src/pystator/ui/static/_next/static/chunks/e8450a345184e876.js
src/pystator/ui/static/_next/static/chunks/edf728ade32a04ce.js
src/pystator/ui/static/_next/static/chunks/f1f8594d5ec7b93e.js
src/pystator/ui/static/_next/static/chunks/f42ff7863eb4c3ff.js
src/pystator/ui/static/_next/static/chunks/f72db555d0b9b302.js
src/pystator/ui/static/_next/static/chunks/f9eb3f4ff87b8d8d.js
src/pystator/ui/static/_next/static/chunks/faa9d854ee78a9bc.js
src/pystator/ui/static/_next/static/chunks/ff1a16fafef87110.js
src/pystator/ui/static/_next/static/chunks/fff814bfadd98faa.js
src/pystator/ui/static/_next/static/chunks/turbopack-28609677000e3394.js
src/pystator/ui/static/_not-found/__next._full.txt
src/pystator/ui/static/_not-found/__next._head.txt
src/pystator/ui/static/_not-found/__next._index.txt
src/pystator/ui/static/_not-found/__next._not-found.__PAGE__.txt
src/pystator/ui/static/_not-found/__next._not-found.txt
src/pystator/ui/static/_not-found/__next._tree.txt
src/pystator/ui/static/_not-found/index.html
src/pystator/ui/static/_not-found/index.txt
src/pystator/ui/static/builder/__next._full.txt
src/pystator/ui/static/builder/__next._head.txt
src/pystator/ui/static/builder/__next._index.txt
src/pystator/ui/static/builder/__next._tree.txt
src/pystator/ui/static/builder/__next.builder.__PAGE__.txt
src/pystator/ui/static/builder/__next.builder.txt
src/pystator/ui/static/builder/index.html
src/pystator/ui/static/builder/index.txt
src/pystator/ui/static/process/__next._full.txt
src/pystator/ui/static/process/__next._head.txt
src/pystator/ui/static/process/__next._index.txt
src/pystator/ui/static/process/__next._tree.txt
src/pystator/ui/static/process/__next.process.__PAGE__.txt
src/pystator/ui/static/process/__next.process.txt
src/pystator/ui/static/process/index.html
src/pystator/ui/static/process/index.txt
src/pystator/ui/static/settings/__next._full.txt
src/pystator/ui/static/settings/__next._head.txt
src/pystator/ui/static/settings/__next._index.txt
src/pystator/ui/static/settings/__next._tree.txt
src/pystator/ui/static/settings/__next.settings.__PAGE__.txt
src/pystator/ui/static/settings/__next.settings.txt
src/pystator/ui/static/settings/index.html
src/pystator/ui/static/settings/index.txt
src/pystator/ui/static/visualization/__next._full.txt
src/pystator/ui/static/visualization/__next._head.txt
src/pystator/ui/static/visualization/__next._index.txt
src/pystator/ui/static/visualization/__next._tree.txt
src/pystator/ui/static/visualization/__next.visualization.__PAGE__.txt
src/pystator/ui/static/visualization/__next.visualization.txt
src/pystator/ui/static/visualization/index.html
src/pystator/ui/static/visualization/index.txt
src/pystator/utils/__init__.py
src/pystator/utils/serialization.py
tests/test_version.py