---
{
  "id": "platform.workflow.runs-and-debugging",
  "topic": "workflow",
  "title": "Workflow runs, external payloads, and debugging",
  "locale": "en",
  "version": "2026-09-05",
  "summary": "Diagnose pending and completed runs from concurrency, fuse notices, persisted step output, actor provenance, and idempotent external fire events.",
  "content": "`maxConcurrentRuns` defaults to 1. Extra accepted runs remain quietly `pending` until capacity exists. `maxDurationSeconds` defaults to 3,600 and is clamped to 1–86,400. A per-Workflow rolling-hour limit defaults to 10 creations and counts every status. Run `actorType` identifies `user`, `agent`, `webhook`, `cron`, `plugin_install`, `trigger`, or `email`; use run/audit details to identify the driver.\n\nA visit-fuse drop warns but may still complete. Missing templates normally render empty with step warnings; `strictTemplates` instead fails before Agent, message, delivery, or notification dispatch and names every missing expression. Nested trigger and prior-output paths are supported. Replay uses persisted completed-step output. A unique `source_fire_event_id` makes repeated Webhook, Cron, or Trigger fires reuse the same run while terminal Workflow events advance chain depth.\n\nH2A/group starts show a live system card with status and optional failing step, never inputs/outputs. Failed and timed-out runs notify the owner unless `notifyOnFailure` is off; completed runs stay silent. Webhook bodies are unchanged under the 102,400-byte cap. Cron supplies `cronJobId`, `scheduledFor`, `message`, `metadata`, `firedAt`, `timezone`, `localDate`, `localTime`, `localWeekday`, and `localDateTime`; local values use the job timezone. Its actor and source fire-event IDs support two-way detail links. Cron scheduling is confirmation-free; direct run Actions require confirmation.\n\nTerminal step input/output is redacted after 30 days. Terminal runs are deleted after 180 days; step rows cascade and audit rows retain a null run reference. Both runtime settings are enforced hourly in bounded batches. Inspect `get_run`, payload, step iterations, notices, and final status before expiry.\n",
  "aliases": [
    "workflow run pending",
    "workflow debug",
    "max concurrent runs",
    "workflow actor type",
    "webhook workflow payload",
    "cron workflow payload",
    "workflow idempotency",
    "workflow chat result card",
    "工作流程執行"
  ],
  "tags": [
    "workflow",
    "runs",
    "debugging",
    "webhook",
    "cron"
  ],
  "relatedActions": [
    "arinova.workflow.run_workflow",
    "arinova.workflow.list_runs",
    "arinova.workflow.get_run",
    "arinova.workflow.cancel_run",
    "arinova.cron.schedule",
    "arinova.webhook.create_webhook"
  ],
  "relatedActionPrefixes": [],
  "sourceReviewedAt": "2026-09-06",
  "url": "https://docs.arinova.ai/en/kb/workflow/runs-and-debugging/"
}
---

`maxConcurrentRuns` defaults to 1. Extra accepted runs remain quietly `pending` until capacity exists. `maxDurationSeconds` defaults to 3,600 and is clamped to 1–86,400. A per-Workflow rolling-hour limit defaults to 10 creations and counts every status. Run `actorType` identifies `user`, `agent`, `webhook`, `cron`, `plugin_install`, `trigger`, or `email`; use run/audit details to identify the driver.

A visit-fuse drop warns but may still complete. Missing templates normally render empty with step warnings; `strictTemplates` instead fails before Agent, message, delivery, or notification dispatch and names every missing expression. Nested trigger and prior-output paths are supported. Replay uses persisted completed-step output. A unique `source_fire_event_id` makes repeated Webhook, Cron, or Trigger fires reuse the same run while terminal Workflow events advance chain depth.

H2A/group starts show a live system card with status and optional failing step, never inputs/outputs. Failed and timed-out runs notify the owner unless `notifyOnFailure` is off; completed runs stay silent. Webhook bodies are unchanged under the 102,400-byte cap. Cron supplies `cronJobId`, `scheduledFor`, `message`, `metadata`, `firedAt`, `timezone`, `localDate`, `localTime`, `localWeekday`, and `localDateTime`; local values use the job timezone. Its actor and source fire-event IDs support two-way detail links. Cron scheduling is confirmation-free; direct run Actions require confirmation.

Terminal step input/output is redacted after 30 days. Terminal runs are deleted after 180 days; step rows cascade and audit rows retain a null run reference. Both runtime settings are enforced hourly in bounded batches. Inspect `get_run`, payload, step iterations, notices, and final status before expiry.
