Presets & limits
A preset is a fixed VM size, chosen with run.preset in task.yaml. Your tier sets which presets you may use, and every other ceiling.
The preset catalogue
Eight names, closed — a typo is caught offline by task:validate.
Default scratch is the disk a run gets when its task asks for less or nothing. See Storage and residency. cpu.large is not on any current plan.
What each tier grants
The numbers that matter first. whoami and quota print your own current ceiling.
Two capabilities are gated per tier: pinning (residency: pinned: free/starter/team may not; pro/enterprise (on request) may) and inbound networking (network: bidirectional: free/starter may not; team/pro/enterprise (on request) may). A tier that has not unlocked one refuses it. See Refused values.
Payload and result size
Two limits are the same for every plan. Both sizes are the compact JSON of the value. Ask ignitify whoami --json for the numbers (limits.max_payload_bytes and limits.max_result_bytes).
- At most 10 KiB (10,240 bytes) goes into a task: the payload of a run, a webhook body, or a schedule.
- At most 10 KiB (10,240 bytes) comes out: the result, an error or a progress chunk.
Over the limit, a payload is refused with 413 and the run does not start. A result over the limit fails the run (result exceeds max size). A webhook body over 10 KiB gets 413 payload too large before the signature is checked. task:validate and task:deploy refuse a run.payload in task.yaml that is over the limit.