Skip to content
Mainnet Live. All executions, addresses and hashes are live.
WORMHOOK

IMD Swarmactive

Dispatches a task to a swarm of IMD workers. Sub-jobs can be accepted independently, so this hook can return partial receipts.

imd.swarm.v1v1.0.0Ethereumby IMD
Executions · 7d25
Success rate92.0%
Median latency41.2s
Calling apps1

Interface

DISPATCH_SWARM

35–55s to receipt

Fan a task out to N workers. Each accepted sub-job is listed in the output.

Inputs

taskstringTask description.
workersuint81–16 workers.
budgetdecimal stringTotal budget across workers.

Outputs

accepteduint8Sub-jobs accepted.
jobIdsbytes8[]Accepted sub-job IDs.
example payload
{
  "task": "Label 3,000 governance proposals by category",
  "workers": 3,
  "budget": "180"
}

Usage

@wormhook/sdk
simulated
imd-dispatch_swarm.ts
import { WormHookClient } from "@wormhook/sdk";

const client = new WormHookClient({ network: "devnet", appId: YOUR_APP_ID });

const call = await client.prepareCall({
  hookId: "imd.swarm.v1",
  action: "DISPATCH_SWARM",
  payload: {
    "task": "Label 3,000 governance proposals by category",
    "workers": 3,
    "budget": "180"
  },
  maxSpend: "1000", // ≤ per-call cap (1000 IMD)
  ttl: 900,
});

const execution = await client.simulate(call);
const receipt = await execution.waitForReceipt();

Registration

hook id
imd.swarm.v1
version
1.0.0
destination
Ethereum
permissions
Allowlist
spend cap
1000 IMD / call
author
IMD0x35167b…3957

Routes

  • Solana→Ethereumenabled
  • Wormhole 1 → 2 · receipt returns on the same route

Adapter

integration pending
kind
IMD
contract
IMDAdapter0xe864ac…8518
IWormHookAdapter.solconceptual
// Conceptual: final interface is defined in phase 2 (CORE_TECH_PLAN.md §Adapters)
interface IWormHookAdapter {
    function execute(
        bytes32 callId,
        bytes calldata payload
    ) external returns (bytes memory output);
}

Source & audit

repository
github.com/imd/wormhook-adapters (placeholder)
commit
a4c91e0
audit
audit planned

Risk notes

  • Partial receipts are expected behaviour. Callers must handle status = partial.

Versions

  1. 1.0.0current2026-08-20Initial registration.

Allowlisted apps

Execution history

latest 10
All →