Permettre au node Guardrails de ressortir l’input complet

Hello,

I would like to propose an improvement to the Guardrails node, based on a very concrete use case in an existing workflow.

Current issue

Today, when the Guardrails node detects a violation (e.g. secretKeys, PII, etc.), it does not return the original input as-is.
As a result:

  • The output is fragmented (checks, detectedSecrets, flags, etc.)

  • The initial input (text, JSON, enriched content) is no longer directly usable

  • Integrating Guardrails into an already-in-production workflow becomes painful, sometimes even blocking

In real-world workflows, Guardrails is usually an intermediate validation node, not a terminal one.
Not being able to easily retrieve the input prevents:

  • Clean conditional routing (pass / fail)

  • Reuse of the validated content

  • Compatibility with existing chains (LLM → Guardrails → post-processing)

Expected behavior

Ideally, the Guardrails node should offer at least one of the following options:

  • Return the original input as-is
    e.g. output.originalInput

  • Optional “pass-through” mode

    • No violation → output = input + metadata

    • Violation → output = input + violations

  • Simple toggle

    • Include original input in output

This would make it possible to:

  • Insert Guardrails without breaking existing workflows

  • Avoid workaround nodes (unnecessary Set / Merge nodes)

  • Keep Guardrails as a true control/validation node, not a dead end

Why this matters

In complex workflows (especially involving LLMs, CMS, RAG, or automated publishing), Guardrails needs to be:

  • Non-destructive

  • Transparent

  • Easily chainable

Today, its behavior forces users to manually rebuild what already existed in the input.