Agent Builder node automatically binds “response_schema” and duplicates required after run

When creating a new node in Agent Builder (Platform → Agent Kit → Workflow canvas), I set Output format = JSON (plain JSON mode), did not bind a schema, and entered no schema fields. After saving and running the workflow, I reopened the node and saw:

  • A purple schema chip labeled response_schema (or another old schema name) appeared automatically — I did not add or select this.

  • Opening the schema (Advanced view) shows the required array contains many duplicated entries ("subject", "body_text", etc repeated dozens of times).

  • Switching the Output format to “Text” from JSON causes the node editor screen to go black (UI freeze or blank canvas). Refreshing returns to the corrupted state.

Steps to reproduce:

  1. Create a new workflow or node.

  2. Add a Sanitizer (or node that uses Output format).

  3. Set Output format = JSON (plain mode). Do not add a schema (no purple chip selected).

  4. Save the node.

  5. Run the workflow (with dummy input, e.g., generate an email).

  6. Reopen the node → notice the purple schema chip appears automatically.

  7. Open the schema (Advanced) → observe the duplicated required entries.

  8. Try to change Output format to “Text” → screen goes black.

  9. Refresh page → still shows the auto-bound schema and duplication.

Expected behavior:

  • When Output format = JSON (non-structured), no schema chip should be auto-bound.

  • The node should remain in the selected mode without switching to Advanced or injecting duplicate required.

  • Switching to Text mode should function normally without UI freeze.

Actual behavior:

  • A schema is auto-bound despite not being selected by the user.

  • The required list becomes exponentially long via duplication.

  • Changing modes causes UI failure (black screen).

Environment:

  • Browser: [fill e.g., Chrome 120.0.0.0]

  • OS: [fill e.g., macOS 14.6]

  • Workflow name & node type: [e.g., “Sanitizer Agent” in workflow “EmailComposerFlow”] Transform

  • Model used: [e.g., gpt-4o-mini]

Additional context / logs/screenshots:

  • Include the screenshots showing: new node with JSON mode, purple chip auto-appearing, the duplicate required array.

Workarounds attempted:

  • Created a brand new schema.

  • Cleared browser cache, restarted browser.

  • Tried in private/incognito mode.

Impact:
This bug prevents stable use of Sanitizer nodes with JSON mode → forces me into fragile Structured Output schemas → time wasted and risk of broken workflows.

UPDATE: I did some work, and with ChapGPT realized

“The builder is auto-binding a Structured Output schema when you connect Sanitizer → Email QA Check. In other words, the downstream node (or the edge) is signaling “I expect a schema,” and the editor slaps on a default response_schema to the upstream agent—even if you set Sanitizer to plain JSON. That’s why it stays clean when isolated and instantly grows a purple chip the moment you wire it in.”

So I disconnected all the nodes and removed the agent node, giving me the issue. And on refresh, I get a black screen no more agent. Dead in the water

Hey James, Apologies for your inconvenience. Can you please confirm, if you are still facing this issue?


Meanwhile, can you also try the below workaround and inform us if that helps?


Workaround: Use an explicit Structured Output schema: Instead of leaving the Sanitizer in “plain JSON” mode, explicitly define a JSON schema for its output before connecting it downstream. In practice, you would switch Output format to JSON and add the expected fields schema yourself (matching what the Email QA node needs). By proactively binding a proper schema, you align the data contract and possibly prevent the system from injecting response_schema. This can avoid the duplicate-field bug because the schema isn’t auto-generated each run – you’ve fixed it in place. To summarise this means using the “Structured” mode intentionally – essentially doing what the builder tried to do, but correctly.


Hope this helps, please keep us posted. Thank you!