langgenius/dify · error · WorkflowApplyHashCollisionError

Workflow draft was modified in another tab; reload required.

Error message

Workflow draft was modified in another tab; reload required.

What it means

Error "Workflow draft was modified in another tab; reload required." thrown in langgenius/dify.

Source

Thrown at web/app/components/workflow/workflow-generator/apply.ts:190

  }

  try {
    await syncWorkflowDraft({
      url,
      params: {
        graph,
        features: existing?.features ?? {},
        conversation_variables: existing?.conversation_variables ?? [],
        // Field is accepted by the backend but not typed in the Pick<> shape of
        // ``syncWorkflowDraft``'s params — spread it in so it reaches the wire.
        ...(existing?.hash ? { hash: existing.hash } : {}),
      } as Parameters<typeof syncWorkflowDraft>[0]['params'],
    })
  } catch (e) {
    // 409 → draft was edited in another tab between our fetch and sync.
    // Translate the raw Response rejection into a typed error so the caller
    // can show a Reload affordance instead of a generic "apply failed" toast.
    if (isHashCollisionResponse(e)) throw new WorkflowApplyHashCollisionError()
    throw e
  }
}

View on GitHub (pinned to ef8544b173)

When it happens

Trigger: Thrown at web/app/components/workflow/workflow-generator/apply.ts:190 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of langgenius/dify@ef8544b173 (2026-08-12). Data as JSON: /api/errors/506a8cd6054fb168. Report an issue: GitHub.