Merged
Conversation
Contributor
There was a problem hiding this comment.
No issues found across 32 files
Architecture diagram
sequenceDiagram
participant UI as Editor UI / Client
participant API as n8n API Server
participant Auth as Auth & Role Manager
participant Engine as Workflow Execution Engine
participant Agents as @n8n/agents SDK
participant MCP as MCP Tool Service
participant DB as Database (Postgres/SQLite)
participant OTEL as OTEL Collector
participant Ext as External APIs (LLM/OAuth/Git)
Note over UI, Ext: n8n v2.15.0 Architectural Flow Changes
rect rgb(240, 240, 240)
Note over UI, DB: NEW: RBAC Role Mapping Flow
UI->>API: POST /role-mapping-rule
API->>Auth: NEW: validateRuleScope()
Auth->>DB: NEW: Save RoleMappingRule
DB-->>UI: 201 Created (Rule saved with Order/Type uniqueness)
end
rect rgb(230, 245, 255)
Note over UI, Ext: NEW: AI Agent & LLM Execution
UI->>Engine: Trigger Agent Workflow
Engine->>Agents: NEW: Initialize Agent SDK
Agents->>Ext: CHANGED: Load OpenAI models (with custom headers)
Agents->>Ext: Basic LLM Chain Call
alt User Aborts Execution
UI->>Engine: Stop Job
Engine->>Agents: CHANGED: Propagate Abort Signal
Agents->>Ext: Cancel Request
end
end
rect rgb(240, 255, 240)
Note over Engine, Ext: CHANGED: MCP & OAuth Recovery
Engine->>MCP: Call Tool
MCP->>Ext: Request with OAuth2 Token
Ext-->>MCP: 401 Unauthorized
MCP->>MCP: CHANGED: Refresh OAuth2 Token
MCP->>Ext: Retry Request with new Token
Ext-->>Engine: Success
end
rect rgb(255, 245, 230)
Note over UI, DB: NEW: Workflow Management & Versioning
UI->>API: NEW: POST /workflows/:id/archive
API->>DB: Update Archive Status
UI->>UI: NEW: Render Inline Version Cards (Replace old Restore UI)
UI->>API: GET /diff (Source Control)
API->>Ext: Fetch Git Branch
Ext-->>API: Branch Data
API->>API: NEW: Validate Branch Name Format
end
rect rgb(250, 240, 255)
Note over Engine, OTEL: NEW: Observability & Telemetry
Engine->>OTEL: Export Workflow-level Trace
alt Trace Export Fails
OTEL->>OTEL: NEW: Safe Trace Exporter (Unhappy path handling)
end
end
UI->>API: GET /healthz
API->>API: CHANGED: Resolve path with N8N_PATH logic
API-->>UI: 200 OK
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
2.15.0 (2026-03-30)
Bug Fixes
process.versionin expression sandbox (#26550) (fc0f071)/healthzendpoint when usingN8N_PATH(#27665) (4436e4b)/diffroute loading in demo mode (#27610) (197a431)Features
Performance Improvements