Listening to multiple streams will exhaust all the available connections in a browser.
Use timer instead, Add stream
parameter.
Make it symetrical with join-set-id
, disallow users from -await
ing on a string,
can track the join set created.
obelisk generate config
blank,webui,fibo
obelisk generate wit -c obelisk.toml --out-dir wit/deps/ my-activity
obelisk new
- show templates
versioning to tell when a component is not supported. The generated WITs should have a version. SDK needs to be versioned as well.
Avoid possible conflicts when creating join sets.
obelisk wit update-deps
Allow pushing and declaring WASM resources only containing the WIT. Needed for external activities.
Similar to a webhook endpoint, new component type with main
, restarts on exit or trap.
Can listen to a HTTP stream and trigger an execution.
Could be used to monitor MQTT, UDP etc.
feat: Heterogenous join sets, allowing one join set to combine multiple function signatures and delays
Enable allow/deny lists of remote hosts.
- Interactive CLI for execution management
- External activities gRPC API
- External executors support - starting executions solely based on WIT exports. External executors must share write access to the sqlite database.
- OpenAPI, GraphQL activity generator
- Backpressure: Limits on pending queues, or an eviction strategy, slow down on
LimitReached
- Labels restricting workflows/activities to executors
- Periodic scheduling
- Deadline propagation
- Cancellation propagation
- Queue capacity setting, adding backpressure to execution submission
- Ability to simulate behaviour of the system with injected failures
- (Manual) Notify activities. When called, thir return value must be supplied via an API endpoint.
- An API for listing executions with their open notify activities.
- Read only query function that can be called during an await point or after execution finishes.
- Optional stdout,stderr persistence / forwarding
- Smart dependency routing from a caller via an interface import to one of many components that export it.
- Smart retries - Retry budget, disabling retries when the activity is failing certain % of requests
- Configurable jitter added to retries
- Workflow memory snapshots for faster replay
- Time traveling debugger for workflows, that works accross WASM deployments
- Ability to hotfix a set of workflows, with an approval system when non determinism is detected - forking the execution log
- Trace strings to their origin accross workflows and activities
- Webhook endpoint mappings: running a single function, translating between HTTP and WIT defined parameters and return value
- Distributed tracing context forwarding for outgoing HTTP as well as webhooks
- Allow specifying permanent error variants in as annotations in WIT
- Support for (distributed) sagas - define rollbacks on activities, call them on failed workflows
- Investigate code-coverage for workflow steps