33 lines
1.3 KiB
TOML
33 lines
1.3 KiB
TOML
# Phase 06 #23 example — async-task plugin.
|
|
#
|
|
# Demonstrates the long-running-task pattern: instead of doing the work
|
|
# inline (which blocks the hook fan-out and risks fuel exhaustion), the
|
|
# plugin enqueues the work through `audit` (the capability for emitting
|
|
# host events) and returns immediately. The host outbox picks up the
|
|
# event and a worker handles the actual work outside the sandbox.
|
|
#
|
|
# The benefit: the plugin invocation stays fast and traceable while the
|
|
# heavy lifting happens in regular BullMQ. The plugin still has clear
|
|
# audit rows for the trigger; the worker handles its own observability.
|
|
|
|
schemaVersion = 1
|
|
id = "de.toolctrl.examples.async-task"
|
|
version = "0.1.0"
|
|
name = "Async Task Demo"
|
|
description = "Enqueues a long-running task via the audit capability, returns immediately."
|
|
entry = "plugin.wasm"
|
|
wasmSha256 = "0000000000000000000000000000000000000000000000000000000000000000"
|
|
signature = "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
|
|
signedBy = "0000000000000000000000000000000000000000000000000000000000000000"
|
|
allowedHosts = []
|
|
|
|
[[capabilities]]
|
|
name = "log"
|
|
|
|
[[capabilities]]
|
|
name = "audit"
|
|
|
|
[[hooks]]
|
|
name = "entity.updated"
|
|
export = "handleEntityUpdated"
|