2.12.0 (2026-03-09)
Bug Fixes
- ai-builder: Don't use autoGenerate for UUID columns for WFB persistence migration (#26558) (a04ff92)
- Clicking a node keeps adding to context (#26469) (9902982)
- core: Apply empty-hash placeholder fix to getHash cache method (#26593) (2e35bb3)
- core: Don't include last human message twice on Chat hub message regeneration (#26430) (672bfc3)
- core: Fix cache get for Redis missing key placeholders and set for falsy values (#26502) (cf90a20)
- core: Fix Python and JS task runners for Windows platform (#26288) (2b35554)
- core: Handle null KV mount options in Vault provider (#26695) (a567244)
- core: Return resolver_missing status when dynamic credentials lack resolver (#26673) (39ca047)
- Customer.io Node: Migrate Customer.io nodes from deprecated beta API to App API (#26049) (46bfc0c)
- editor: Add new collection parameter button incorrectly displayed in old collections UI (#26631) (95f7ce8)
- editor: Always show auth mode dropdown in credential modal (#26280) (8ac25b8)
- editor: Change button variant to ghost (#26542) (9a5c460)
- editor: Do not show "Set up error notifications" suggestion when activating an error workflow (#26419) (34af844)
- editor: Fix alignment in trigger panel (#26475) (a6e5d9b)
- editor: Fix expression autocomplete for optional chaining (#26598) (faf2267)
- editor: Fix parameter label hover glitch with Fixed/Expression toggle (#26676) (00ccef8)
- editor: Fix race condition in credentialResolverId test (#26464) (d614954)
- editor: Hide AI context menu option when AI builder is not licensed (#26627) (23d29bc)
- editor: Improve NDV panel drag handle contrast in dark mode (#26533) (7208156)
- editor: Position chat welcome message to center with base LLM models (#26442) (1cc7e8d)
- editor: Reduce fixed collection add button sizes (#26411) (396fa21)
- editor: Remember data table sort selection (#26462) (cc1e378)
- editor: Store statistics only when wf succeeded or failed (#25988) (d3af5e4)
- Facebook Trigger Node: Include appsecret_proof in Graph API calls (#26497) (dfd41f4)
- Filter Node: Fix inverse logic description (#19634) (8a866d0)
- Fix compliance with RFC 9727 and 8414 for MCP DCR (#26290) (ab26070)
- Fix credential resolver RBAC for member users (#26552) (6b171fc)
- Form Node: Improve custom CSS sanitization (#26623) (6f2f384)
- Form Node: Improve form rendering consistency (#26540) (f1a074f)
- Handle collaboration push old format (#26467) (a1f3515)
- Log streaming config works with proxy (#26492) (c275f80)
- Merge by sql update (#26364) (6a2127c)
- Notion Node: Skip fetching children of unsupported block types (#26188) (8c12032)
- Rebuild isolated-vm in Dockerfile (#26672) (854835d)
- Remove isolated-vm from Dockerfile npm rebuild (#26745) (908a810)
- Slack Trigger Node: Users or bots to ignore are not actually ignored for
message_changedevent subtype (#26414) (14b91ab) - Task Runner Initialize NODE_PATH for external npm packages (#24517) (b0a4d3d)
- Todoist Node: Filter tasks endpoint (#26396) (62d7769)
Features
- Add lint rule to disallow httpRequest with manual authentication (#26624) (82eae73)
- Add option to hide credential overwrites (#26489) (78b7f88)
- Add optional
--publishflag to n8n-node release command (#26688) (ec0cf13) - Add support for publishing community nodes through GitHub Actions (#26597) (0057bf3)
- Chat Node: Return chat message instead of input data if Chat is not waiting for user input (#26167) (cc22c31)
- core: Add (un)publish workflow tools to MCP (#26681) (724f361)
- core: Add 1Password external secrets provider (#26307) (1f1021e)
- core: Add a separate MCP tool for full execution data (#26674) (9e2aa8e)
- core: Add configurable HTTP status code for OAuth2 token refresh (#26641) (9dc8b44)
- core: Add SSRF protection config (#26424) (f2a6b3e)
- core: Add suggested prompts to Personal Agents on Chat hub (#26444) (d00cded)
- core: Add validation on workflow with dynamic credentials (#26423) (71cec8b)
- core: Emit audit event when execution data is revealed (#26425) (01f912c)
- core: Explicit fail on production executions with failing dynamic (#26500) (9e500cc)
- core: Expose isEnabled on Secrets Provider Connection (#26680) (6fa0d2e)
- core: Implements telemetry group identify calls (#26634) (8387901)
- core: Improve secret proxy (#26522) (4fe6b4f)
- core: Integrate SSRF protection into request helpers (#26581) (809ea48)
- core: Static fallback on dynamic credentials for manual executions (#26406) (f72dfc7)
- editor: Add 'New' badge to project roles and upgrade landing page (#26348) (e1221d6)
- editor: Allow switching versions in workflow history diff view (#26418) (26de9dc)
- editor: Implement read-only mode for external secrets connections (#26432) (4ffe54b)
- editor: Make it possible to pick Chat hub model by ID even if no models are loaded (#26435) (45fa641)
- Implement additional checkbox confirmation for quick connect flow (#26472) (fcf2d31)