n8n/packages/@n8n
Ricardo Espinoza 2177fe1d89
Some checks failed
CI: Python / Checks (push) Has been cancelled
feat(core): Add login session management
Add a per-login session registry so users can see the browsers and devices
signed in to their account and revoke individual sessions or all other
sessions from their personal settings.

Backend:
- New user_login_session entity, migration and repository, keyed by a session
  id embedded as the JWT jti claim.
- LoginSessionService owns the session lifecycle (create on login, touch on
  refresh, list, revoke, revoke-all-others) and prunes expired rows on read.
- The session check is enforced in validateToken, so every auth path
  (interactive, webhook cookie auth, dynamic credentials) rejects a revoked or
  logged-out session. Tokens issued before this change carry no jti and fall
  back to the existing checks until they expire, so no one is logged out on
  upgrade.
- Password change, email change and MFA enable/disable revoke the user's other
  sessions.
- /me/login-sessions endpoints (list, revoke one, revoke all others).

Frontend:
- Login sessions section in personal settings listing device, IP, last active
  and sign-in time, with the current session flagged and per-row revoke plus a
  revoke-all-others action.
2026-07-01 17:28:11 -04:00
..
agents feat(core): Route Instance AI billing to a dedicated credit pool (#33263) 2026-07-01 14:02:53 +00:00
ai-node-sdk 🚀 Release 2.29.0 (#33260) 2026-06-30 10:21:29 +03:00
ai-utilities chore: Fix hoisted type errors on vite configurations (#33276) 2026-07-01 13:29:48 +03:00
ai-workflow-builder.ee chore: Fix hoisted type errors on vite configurations (#33276) 2026-07-01 13:29:48 +03:00
api-types feat(core): Add login session management 2026-07-01 17:28:11 -04:00
backend-common 🚀 Release 2.29.0 (#33260) 2026-06-30 10:21:29 +03:00
backend-network fix(core): Send Digest auth credentials only after the server challenge (#32673) 2026-07-01 06:02:00 +00:00
backend-test-utils chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00
benchmark chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00
chat-hub chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00
cli fix(core): Beta import/export API not available on cloud (no-changelog) (#33382) 2026-07-01 15:58:02 +00:00
client-oauth2 feat(core): Add certificate authentication option to Microsoft OAuth2 credentials (#33227) 2026-07-01 13:55:09 +00:00
codemirror-lang chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00
codemirror-lang-html 🚀 Release 2.29.0 (#33260) 2026-06-30 10:21:29 +03:00
codemirror-lang-sql chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00
computer-use chore: Fix hoisted type errors on vite configurations (#33276) 2026-07-01 13:29:48 +03:00
config fix(core): Beta import/export API not available on cloud (no-changelog) (#33382) 2026-07-01 15:58:02 +00:00
constants chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00
crdt 🚀 Release 2.28.0 (#32842) 2026-06-23 14:31:55 +03:00
create-node 🚀 Release 2.29.0 (#33260) 2026-06-30 10:21:29 +03:00
db feat(core): Add login session management 2026-07-01 17:28:11 -04:00
decorators chore: Fix hoisted type errors on vite configurations (#33276) 2026-07-01 13:29:48 +03:00
di 🚀 Release 2.27.0 (#32365) 2026-06-16 10:13:05 +00:00
engine 🚀 Release 2.29.0 (#33260) 2026-06-30 10:21:29 +03:00
errors chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00
eslint-config chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00
eslint-plugin-community-nodes chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00
expression-runtime fix(core): Preserve Date values passed to the expression isolate (#33322) 2026-07-01 09:47:37 +00:00
extension-sdk chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00
imap 🚀 Release 2.29.0 (#33260) 2026-06-30 10:21:29 +03:00
instance-ai fix(ai-builder): Prevent snapshot staging races during concurrent sandbox creation (#33342) 2026-07-01 12:53:17 +00:00
json-schema-to-zod chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00
local-gateway chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00
mcp-apps fix(core): Narrow mcp apps frame domains (no-changelog) (#33123) 2026-06-30 13:30:10 +00:00
mcp-browser chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00
mcp-browser-extension chore: Remove shamefully-hoist (#32569) 2026-06-25 10:03:07 +00:00
node-cli chore: Fix hoisted type errors on vite configurations (#33276) 2026-07-01 13:29:48 +03:00
nodes-langchain fix(Basic LLM Chain Node): Prevent "Failed to parse agent steps" error (#33338) 2026-07-01 10:07:00 +00:00
permissions feat(API): Support exporting projects via the public API (#33084) 2026-07-01 13:54:46 +00:00
scan-community-package 🚀 Release 2.29.0 (#33260) 2026-06-30 10:21:29 +03:00
scheduler feat: Add @n8n/scheduler package scaffold for Durable Scheduler (no-changelog) (#33294) 2026-06-30 15:53:22 +00:00
stylelint-config chore: Remove shamefully-hoist (#32569) 2026-06-25 10:03:07 +00:00
syslog-client chore: Fix hoisted type errors on vite configurations (#33276) 2026-07-01 13:29:48 +03:00
task-runner chore: Fix hoisted type errors on vite configurations (#33276) 2026-07-01 13:29:48 +03:00
task-runner-python feat(core): Add N8N_RUNNERS_ALLOW_TRANSITIVE_IMPORTS for the Python task runner (#33130) 2026-06-30 08:20:12 +00:00
tournament chore: Fix hoisted type errors on vite configurations (#33276) 2026-07-01 13:29:48 +03:00
typeorm 🚀 Release 2.29.0 (#33260) 2026-06-30 10:21:29 +03:00
typescript-config chore: Fix hoisted type errors on vite configurations (#33276) 2026-07-01 13:29:48 +03:00
utils refactor: Remove @n8n/utils barrel export (no-changelog) (#33082) 2026-06-30 16:05:24 +03:00
vitest-config 🚀 Release 2.29.0 (#33260) 2026-06-30 10:21:29 +03:00
workflow-sdk chore: Remove references to Jest (#33282) 2026-07-01 09:03:25 +00:00