Overview
Fixed
- Durable tasks with many concurrent waits no longer flood the engine with worker status requests. The durable listener sent one worker status request per wait, each listing every pending wait, which was quadratic in the number of waits; each request now lists only the waits registered since the previous one.
- The periodic worker status request lists only waits that have been pending for more than two seconds, is sent every five seconds instead of every second, and is split into requests of at most 10,000 entries so it stays under the gRPC message size limit.
Documentation for agents
The linked pages serve plain markdown for tools and agents. Full docs index: https://docs.hatchet.run/llms.txt
Setup and local development:
- Quickstart: https://docs.hatchet.run/v1/quickstart.md
- Running Hatchet locally: https://docs.hatchet.run/v1/running-locally.md
Core concepts:
- Tasks: https://docs.hatchet.run/v1/tasks.md
- Workers: https://docs.hatchet.run/v1/workers.md
- Running tasks: https://docs.hatchet.run/v1/running-your-task.md
- DAGs: https://docs.hatchet.run/v1/directed-acyclic-graphs.md
- Durable execution: https://docs.hatchet.run/v1/durable-execution.md
Flow control:
- Concurrency: https://docs.hatchet.run/v1/concurrency.md
- Rate limits: https://docs.hatchet.run/v1/rate-limits.md
- Retries: https://docs.hatchet.run/v1/retry-policies.md
- Idempotency: https://docs.hatchet.run/v1/idempotency.md
- CEL expressions: https://docs.hatchet.run/v1/cel-expressions.md
Ruby SDK reference (overview: https://docs.hatchet.run/reference/ruby.md):
- CEL: https://docs.hatchet.run/reference/ruby/feature-clients/cel.md (guide: https://docs.hatchet.run/v1/cel-expressions.md)
- Crons: https://docs.hatchet.run/reference/ruby/feature-clients/cron.md (guide: https://docs.hatchet.run/v1/cron-runs.md)
- Events: https://docs.hatchet.run/reference/ruby/feature-clients/events.md (guide: https://docs.hatchet.run/v1/events.md)
- Filters: https://docs.hatchet.run/reference/ruby/feature-clients/filters.md (guide: https://docs.hatchet.run/v1/events.md)
- Logs: https://docs.hatchet.run/reference/ruby/feature-clients/logs.md (guide: https://docs.hatchet.run/v1/logging.md)
- Metrics: https://docs.hatchet.run/reference/ruby/feature-clients/metrics.md (guide: https://docs.hatchet.run/v1/prometheus-metrics.md)
- Rate Limits: https://docs.hatchet.run/reference/ruby/feature-clients/rate_limits.md (guide: https://docs.hatchet.run/v1/rate-limits.md)
- Runs: https://docs.hatchet.run/reference/ruby/feature-clients/runs.md (guide: https://docs.hatchet.run/v1/running-your-task.md)
- Scheduled Runs: https://docs.hatchet.run/reference/ruby/feature-clients/scheduled.md (guide: https://docs.hatchet.run/v1/scheduled-runs.md)
- Tenant: https://docs.hatchet.run/reference/ruby/feature-clients/tenant.md
- Workers: https://docs.hatchet.run/reference/ruby/feature-clients/workers.md (guide: https://docs.hatchet.run/v1/workers.md)
- Workflows: https://docs.hatchet.run/reference/ruby/feature-clients/workflows.md (guide: https://docs.hatchet.run/v1/tasks.md)
Installation
Add this line to your application's Gemfile:
gem 'hatchet'And then execute:
bundle installOr install it yourself as:
gem install hatchetDocumentation
For detailed documentation, examples, and best practices, visit: