Commit Graph
15360 Commits
Author SHA1 Message Date
hugocasaandClaude Opus 5.5 2eb56f2372 chore: date the native trigger connection migration after main's newest
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 e0841a485c feat: connect native trigger accounts at a chosen path through the resource drawer, and reconnect from the picker
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 03d17d6515 fix: keep pre-connection triggers working, and guard reconnects and service removal
- The migration recovers a service's connection when the workspace row lost its path,
  which saving the OAuth app or an abandoned instance connect used to do.
- A trigger created without a connection uses the shared account, as older clients and
  trigger specs expect.
- Only whoever connected a path, or an admin, may reconnect over it.
- Removing a service or sharing an account checks a path-scoped token against what it touches.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 5bcbb36dea fix: make the OAuth app dialog's open prop required
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 c3b193cdb5 fix: say members can browse what a shared native trigger account can access
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 8ce6f13ecb fix: point native trigger error hints at the account picker and the shared account
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 6362794d7f feat: one status line per native trigger service, a Nextcloud admin hint, and clearer refusals
The shared account is a regular form field, Nextcloud shows an alert while no
admin account is shared, a non-admin Nextcloud account gets a message saying why
it cannot create triggers, and the OAuth dialog only accepts a full server URL.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 0dad59f594 fix: pick the shared account with an inline select, and keep Nextcloud's own-account path in its wording
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 525fa4af67 feat: say what members can do with each native trigger service, keep the shared account optional
Nextcloud, whose webhooks need an admin account, offers connecting and sharing one
directly instead.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 a1dc2c6299 fix: say who configured each native trigger service, and name removal for what it removes
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 f9fef32d06 feat: show the OAuth app status in each native trigger card's header
App actions move into a menu, the card body holds only the shared account, and
service descriptions name what fires the trigger.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 06a842e296 fix: compact the native trigger service card
Edit and Remove sit on the workspace OAuth app row, and the workspace connection
reads as part of the same section.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 b4d9623aaf fix: lead the OAuth app row with which app is in use, with a link to change it
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 8d0d70295b fix: drop a stray brace from the OAuth app dialog binding
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 8c34fb7df7 feat: configure a native trigger service's OAuth app in a dialog
The card states once which OAuth app is in use, with a single Configure action,
and the form follows the design system.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 e6eccafa1b feat: show each native trigger service's OAuth app status and keep removal apart
Remove now only appears with a workspace OAuth app, since a workspace using the
instance app has nothing of its own to remove.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 d0f6ed4418 fix: let admins share any connection, serialize service removal with trigger creation
An admin can already read every connection, so restricting sharing to their own
added nothing. Removing a service now takes each connection's lock and keeps
everything if a trigger was created meanwhile.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 ebae5cc903 fix: drop the own-account note from the workspace connection field
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 ed39568674 fix: label the disconnect action in the connection picker
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 04e9cf50e1 feat: pick the workspace connection like other workspace resources, connect and disconnect from the picker
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:27 +02:00
hugocasaandClaude Opus 5.5 4a24656649 feat: let an admin share one native trigger connection with the whole workspace
Members can use the shared connection without reading its token. It reuses
workspace_integrations.resource_path, so existing workspace connections stay
usable by members after upgrading.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 16f1d9b528 fix: key token write-back by account and serialize trigger creation with disconnect
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 c9eec8e9d2 fix: scope-check the connection path when connecting, keep a connection still in use
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 5d446ff9fd fix: skip triggers moved since their scope check when disconnecting
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 665eac45ed fix: delete only the scope-checked triggers when disconnecting
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 5e4e90a43d chore: order the native trigger connection migration after account ownership
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 d83658cd18 fix: authorize oauth account links and scope native trigger disconnects
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 99c6ce4476 fix: bind native trigger oauth state to its user and follow connection renames
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 16e5249ae0 feat: let native triggers act through per-user or shared connections
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 5dae01e990 fix: stop listing the ignored account input in the chat's write_variable instructions
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 5af3643592 refactor: create an OAuth token variable and its account in one request
createAccount takes the variable and the store creates both in one
transaction, so a connect is either fully saved or not at all. The connect
flows make that single call instead of creating the variable and linking it
afterwards.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 df2ae2275a fix: keep the resource AppConnect fills when linking its account fails
Deleting a variable also deletes the resource at its path, so the rollback
is skipped when filling an existing resource.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 a88eff801c fix: delete AppConnect's token variable when linking its account fails, so Save can be retried
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 b4d0b9fe69 chore: pin the EE refresh and linking checks
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 9d5718df43 fix: stop exporting the OAuth account a variable links, and regenerate the chat tool schema
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 635f51d642 fix: link the account to the token variable AppConnect created, even if the path is edited mid-save
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 0ba2705669 chore: keep the MCP secret variable test's formatting
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 24dcdf0e63 refactor: link a variable to its OAuth account only in the connect flow
The variable endpoints no longer take an account link from the caller. The connect
flows create the token variable first and pass its path to create_account, which
links it server-side. This replaces the creator check and the created_by
bookkeeping, along with both migrations.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 5b1f76b498 fix: follow a non-member superadmin's instance username on the OAuth accounts they created
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 9303ddd50f fix: keep an oauth account's creator in step with the user's username
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 6e93305e8c test: cover a permitted relink through a variable update
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 4b8e770922 test: cover relinking an oauth account through a variable update
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 682ce9025e fix: drop an oauth account link the caller may not hold instead of failing
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
hugocasaandClaude Opus 5.5 68cc96eefd fix: only let an oauth account's creator or readers link it to a variable
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:56:26 +02:00
Ruben FiszelandClaude Opus 5.5 adae5b32a3 chore: drop the temporary git sync e2e loop and race diagnostics (#11877)
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 12:55:30 +02:00
Ruben Fiszelandrubenfiszel de66e47b1c chore(main): release 1.841.0 (#11860)
* chore(main): release 1.841.0

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
v1.841.0
2026-10-19 01:53:42 +02:00
Ruben Fiszel bfa093e09c fix: fork deploy override and selection out of step with the item list (#11871)
* fix: keep the fork deploy override across selection changes

* fix: drop selected rows that leave the fork comparison
2026-10-19 01:53:17 +02:00
Ruben FiszelandClaude Opus 5.5 a7561fd8bd fix: insert ApiAuthed into request extensions in no-auth mode (#11868)
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 01:38:00 +02:00
Ruben FiszelandClaude Opus 5.5 69d36f77da feat: probe nsjail with a real jail and add a gVisor compat mode (#11865)
* feat: probe nsjail with a real jail and add a gVisor compat mode

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix: route dbt captured phases through the gVisor compat step and harden the probe dir

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* feat: patch nsjail with a gvisor_compat option instead of applying rlimits from the worker

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix: keep DuckDB jailed on a sandboxed worker whose nsjail probe failed

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* docs: link the upstream gVisor issues from the nsjail patch

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 01:33:35 +02:00
Ruben FiszelandClaude Opus 5.5 5c205fa469 feat: let ALLOW_PRIVATE_MCP_SERVER_URLS name the private hosts it allows (#11869)
* feat: let ALLOW_PRIVATE_MCP_SERVER_URLS name the private hosts it allows

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix: warn once about invalid MCP private-host entries

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 01:18:52 +02:00