Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.digifist.com/llms.txt

Use this file to discover all available pages before exploring further.

Flow validation is a mandatory step that runs before any automation can be activated. It evaluates the assembled flow against a set of structural, compliance, and configuration checks and returns either a clean result — the flow can proceed to activation — or a set of flagged issues that must be resolved first. Validation is powered by two evaluators in the Galantis AI framework: GuardResult and PlanningResult. Together they cover everything from missing node connections to unapproved templates to incomplete condition logic.

What this covers

  • When validation runs
  • The two evaluators and what each checks
  • All validation checks and what they look for
  • How to read and resolve validation results
  • The difference between blocking errors and advisory warnings

When validation runs

Validation runs automatically when you attempt to activate an automation. It also runs continuously in the background during flow building — issues detected during building are surfaced as inline node highlights without blocking the canvas. The formal validation gate only applies at the moment of activation. A flow can be saved in any incomplete state as a draft — validation does not prevent saving. It only prevents the transition from inactive to active.

The two evaluators

GuardResult — Evaluates structural and compliance conditions that must pass for the flow to be activatable. These are blocking checks — a flow with any GuardResult failure cannot be activated until the issue is resolved. PlanningResult — Evaluates the flow’s logical completeness and optimization quality. Some PlanningResult checks are blocking; others are advisory. An advisory result surfaces a recommendation without preventing activation.

Validation checks

Check: Every Action Node in the flow must reference a template with APPROVED status.Evaluator: GuardResult — blockingWhat is checked: Galantis inspects every Action Node’s template assignment and verifies the current status of each referenced template via has_unapproved_template. If any Action Node references a template in DRAFT, PENDING_APPROVAL, or REJECTED status, the flow fails this check.Why it blocks: WhatsApp does not accept message sends using unapproved templates. Activating a flow with an unapproved template would result in every customer who reaches that Action Node receiving a failed message send — the flow would appear active but would not function.How to resolve:
  • Open Templates and check the status of the template assigned to the flagged Action Node
  • If PENDING_APPROVAL — wait for Meta’s review to complete. Approval typically takes minutes to a few hours
  • If DRAFT — submit the template for Meta review
  • If REJECTED — review the rejection reason, fix the template content, and resubmit
Once the template reaches APPROVED status, return to the flow and attempt activation again — no changes to the flow itself are required.
A template that was APPROVED when the automation was built can be paused by Meta after activation. The has_unapproved_template flag is checked at activation time — it does not continuously monitor template status after the flow is live. If a template is paused post-activation, the flow will remain active but affected Action Nodes will fail for customers who reach them.

Validation result summary

CheckEvaluatorBlocks activation
Template approval statusGuardResultYes
Node connectionsGuardResultYes
Condition branch completenessGuardResultYes
Condition logic completenessGuardResultYes
Frequency cap configuredGuardResultYes
Missing delay after triggerPlanningResultNo — advisory
Identical templates on both branchesPlanningResultNo — advisory
High-frequency trigger with EVER capPlanningResultNo — advisory
Broad trigger with no conditionsPlanningResultNo — advisory

How to read validation results

When validation runs at activation time, results are surfaced in two ways: Inline on the canvas — Nodes with blocking errors are highlighted in a distinct error state. Clicking a highlighted node opens its settings panel, which shows the specific issue and the resolution path. Validation summary panel — A summary of all blocking errors and advisory suggestions appears as a list. Blocking errors must be resolved before the activation button becomes available. Advisory suggestions are listed separately and can be individually dismissed. Work through blocking errors one at a time, starting with the simplest to resolve (unconnected nodes, missing frequency caps) before addressing more complex issues (template approval status, incomplete condition logic).