* feat: pause a worker group without stopping its workers
* chore: bump ee ref
* fix: keep dedicated workers running across a pause toggle
* fix: edit a copy of the worker group config in the drawer
* fix: stable priority tag order, keep pause-only configs in the drawer
* fix: keep inherited worker tags when saving from the drawer
* fix: keep an explicit empty tag list when leaving dedicated mode
* fix: keep inherited tags when creating a config from the drawer
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* chore: update ee-repo-ref to 6f23819e947b18878000e580ddefccfd01a73166
This commit updates the EE repository reference after PR #853 was merged in windmill-ee-private.
Previous ee-repo-ref: 6cf802bdbe17b4a66757016515044b8a9ef9ef19
New ee-repo-ref: 6f23819e947b18878000e580ddefccfd01a73166
Automated by sync-ee-ref workflow.
* feat: confirm before applying a worker config change that restarts workers
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* chore: pin the ee commit that compiles against main
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* chore: retrigger ci after the github outage dropped the push event
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
* fix: type snowflake columns in database manager insert and alter forms
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: scope insert-form type lowercasing to snowflake
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: send snowflake insert-form dates as yyyy-MM-dd
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* chore: update ee-repo-ref to acb254ac509aff244849c09e50a8d39aae185138
This commit updates the EE repository reference after PR #852 was merged in windmill-ee-private.
Previous ee-repo-ref: 9cc330f1a8e80bc075a6ad9839966d3b344f8ddd
New ee-repo-ref: acb254ac509aff244849c09e50a8d39aae185138
Automated by sync-ee-ref workflow.
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
* feat: let the flow error handler mark the flow as successful
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: end the flow as a success when an inner error handler recovers
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: keep the recovery stop to parents that honor it
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* chore: update ee-repo-ref to cbda28f632d773fd44e9bef8bea36dcb5e35b55d
This commit updates the EE repository reference after PR #847 was merged in windmill-ee-private.
Previous ee-repo-ref: b5a8e3631f657fbb0a7b4b4ef89ddb9ed2c43b1d
New ee-repo-ref: cbda28f632d773fd44e9bef8bea36dcb5e35b55d
Automated by sync-ee-ref workflow.
* fix: keep skip-failure loops going and mask the recovery flag at its source
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: recover keeps the steps that run and only turns the flow green
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: only the root flow turns green on a recovered failure
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: a flow-chaining error keeps the flow failed after a recovery
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
* feat: run AI decision steps on OpenAI's Decisions API
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: fail refused openai decisions and keep structured criteria
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: send only user message lists as openai decision messages
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: omit descriptions the openai decision step does not have
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: pass only exact openai user messages through as decision input
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: check the payload of openai decision message parts
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* feat: default new raw apps to react 19 and ask for the data setup
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: say what app new --schema writes and soften the already-set-up wording
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: resolve bare init_app table names in the app schema, fix --schema help
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: make every trigger and schedule editor control respect read-only mode
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix: grey out read-only option buttons in gcp, mqtt and sqs editors
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
* fix: keep chat tool cards collapsed the way the user left them
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: open a tool card awaiting confirmation even after the user collapsed it
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: set up a new app before starting with AI and follow its deploy
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* feat: set up a new app in one modal over its ai session
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: show schema creation progress and put the new app modal over the page
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: say when no worker can create a new app's schema instead of waiting
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: drop the summary from the new app modal
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* feat: list existing tables only under an existing schema, explore from the schema row
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* feat: start a new app from two cards, with ai recommended
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* feat: isolate the raw-app editor preview when the app opts into sandboxing
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix: gate job reads from a sandboxed editor preview like the deployed app
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix: send a plain user in a sandboxed raw app's startup message
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* chore: pin ui_builder to d3fdb70
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
* feat: choose build with AI or code when creating a raw app
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: carry the picked data table into a new-app session and seed only on 404
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: wait for data tables before build with AI and stop re-registering on edits
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: create apps without an unusable data table and name session-seeded apps
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* feat: rename new-app choices and hint where to switch to AI later
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* feat: open a run as a pushed page on narrow runs page
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: keep modifier-click multi-select and arrow keys on the narrow runs list
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: leave the narrow re-run page once the re-run is sent, and clear the opened run on reset
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: close the re-run options once a table re-run completes
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: serve the raw-app preview shell sandboxed, load a blob copy in the editor
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix: give the preview shell the deployed app wrapper's sandbox flags
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
* fix: drop the add a prompt for AI button from the run page
* fix: open the run page in the session preview from a plain chat button
* fix: rename additional prompt for AI to AI prompt
* fix: put the run page chat button beside advanced when no AI prompt
* fix: search slow runs filters by time windows instead of timing out
* fix: cancel a pending runs page when its listing is reset
* fix: keep runs scan windows disjoint at microsecond precision
* fix: race the single runs request against the window scan
* fix: list the cursor window when a runs scan starts at the oldest job
* fix: show the runs history scan as an info alert
* fix: show runs scan progress as a bar and keep the session button on the searchbar row
* fix: stop a runs scan whose windows are no faster when narrower
* fix: right-align the runs searchbar row when the header wraps
* fix: keep the runs scan stop button inside a narrow list pane
A team plan canceled mid-month now keeps premium until the 1st, capped at the
executions its final invoice paid for. That reuses the past-due cap, so the job
refusal and the UI toast said "your last invoice is unpaid". Word both for a
canceled plan, and show it on the plan settings page.
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
* feat(ai-chat): show per-file diffs for raw app edits
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: keep reference runnable writes on the generic tool card
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: extend diff row highlights across horizontal overflow
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: collapse queued and running chat tool calls into a waiting row
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: correct the waiting-row comment in groupToolRuns
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: fold queued calls only behind a call in flight, after edit groups
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: stop a waiting row before queued calls that form an edit or explore group
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* refactor: use the session tab strip for workflow sdk module tabs
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: keep module deletion on the explicit button and tab order view-only
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* refactor: use the design-system button for module deletion
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: let modified keys through file tabs and keep keyboard rename off the tab
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: route modified enter past the dnd zone so page shortcuts fire from draggable tabs
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: forward modified enter from dnd item wrappers too
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: evaluate field conditions and step test inputs in QuickJS
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix: answer single-quoted field conditions without loading the engine
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix: bound expression recursion and ignore leading blank space
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
* feat: card layout and load-more for the audit logs page
* fix: stream audit log load-more with stop control and show inline filters from fhd
* fix: fit audit log filters to measured header width and hold timeline during load-more
* fix: keep audit log load-more available when a trimmed short batch has rows left
* fix: stream the ai chat compaction request instead of waiting on it
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix: reject a compaction stream stopped midway instead of keeping partial text
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix: reject a compaction stream that ends without a finish reason
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* test: cover a completed responses stream in the streamed completion helper
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
* feat: redesign the service logs page
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: drop a stale jump after a cached host switch and remove unused max_lines
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: keep focus on url sync and expose host selection and new logs to assistive tech
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: reset the tail on dropdown host picks, resume refresh after search, key log cache by host
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: clear the pending jump when a host switch needs no fetch
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* feat: show upcoming events when hovering a schedule's cron expression
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: read cron version from the draft for draft-only schedule previews
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* feat: replace the AI input filling toggle with an additional prompt for AI
* feat: pass the additional prompt for AI to MCP clients and shared AI guidance
* feat: shrink the run page AI card to a button and a collapsed prompt
* fix: offer writers a way to add a prompt for AI from the run page
* fix: keep a resource default set in the schema when the script is redeployed
Fixes#11493
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: keep a schema resource default only while the arg stays that resource type
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: drop a scalar resource default when the arg becomes a list
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: let legacy draft-only items be discarded from the home page
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: describe the legacy draft move guard as it now is
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* feat: add an instance setting routing all dependency jobs to one tag
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: keep bunnative locks on bun and explain the default dependency routing
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* feat: add test key button to AI resource drawers
* fix: scope-check inline AI resource values and keep test model editable
* fix: keep test model editable for unsaved resources, own-key provider check
* fix: restore the save to workspace button on inline flow steps
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: make the inline step save to workspace button icon only
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: offer user scopes in the slack scope editor and drop the generated description on type change
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* feat: offer slack write scopes as bot and user scope options
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
* feat(sessions): show an item's deployed page in the preview panel
The preview panel showed an item's editor and nothing else. It now shows the
deployed page too, as a tab of its own.
**Two sides, two tabs.** The editor and the deployed page are different things
to look at, so `isItemTabFor` keys on the side rather than the item: asking for
a side already open focuses it, asking for the other opens it alongside. Two
editors for one item still cannot coexist — they would race its single
(kind, path) cell — but an editor beside a viewer is safe, since the viewer
reads the deployed version over the API and holds no cell. The tab breadcrumb
keeps re-pointing in place; `Exit & see details` and the detail page's `Edit`
open the other side instead of consuming the one you are on. A tab's label
carries `(edit)` when it is the editor side.
**The detail pages moved out of their routes.** `/scripts/get` and `/flows/get`
are now thin wrappers over `ScriptDetail` and `FlowDetail`, which the panel
renders too. Everything they reach — drawers, triggers, saved inputs — is scoped
to the viewer's workspace through `setOperatingWorkspace`, and every navigation
they attempt is caught by `interceptNav` and turned into a move inside the
panel, so nothing takes the browser out of the session. A plain click is
intercepted; ⌘-click and middle-click still open a real tab, which is why the
pages keep their `href`s.
**The picker opens what exists.** A row opens the deployed page, or the editor
when nothing is deployed there, and carries a Draft / Draft only badge in the
review dock's words. `WorkspaceItem` gained `draftOnly` and `hasDraft` from the
listers, which already returned both; deploys now invalidate the picker cache
through `itemDeployed`, so a just-deployed item stops reading as a draft. Rows
also carry a hover Edit action, reachable from the keyboard with the pick
modifier.
`open_preview` gained a `mode`, narrowed out of the advertised schema for a
session that cannot write drafts and re-checked per path in the handler, where
a refusal reports "couldn't check" apart from "denied". The mode is resolved
before those checks, so a call that omits it is gated as the editor it will
become.
Alongside, the workspace a detail page acts on is now the one it is showing
rather than the one the browser is navigated to: `MoveDrawer`,
`toggleWorkspaceErrorHandler` and the pages' own permission gates read the
operating workspace and its acting user, and `RunForm` mints a password
argument's ephemeral variable there too — in a fork session all of these
previously answered for the parent. `InWorkspaceAppViewer` hands the app's
`ctx` user down as a prop instead of writing the global `userStore`, which from
a session tab was re-pointing every permission check on the page.
Fixes found on the way: `DetailPageLayout` claimed `h-screen` inside a panel
that is not the viewport; Edit on a historical script version dropped the
version from the intercepted click; the Run button stayed spinning after a run
that left the page mounted; and the window-level run shortcut fired from a
collapsed panel and from keys another handler had already claimed.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
* fix(sessions): historical edits, stale not-found, shared edit rights, tab labels
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): keep deployed-page links and workspace reads in the session
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): scope detail hrefs to the session, re-point the viewer's own tab
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): keep a previewed raw app's route out of the session URL
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): resolve edit-in-fork against the session workspace
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): read advanced run tags from the session workspace
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): fork from the session workspace, star only navigation items
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): mount only the side a preview tab shows
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): address CI review round 1 findings
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): route links in a deployed page's drawers through the panel
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): tell the chat which deployed page the panel shows
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): only a 404 reads as an undeployed raw app
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): scope the unparseable-JSON run gate to the form
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): a flow deleted from the panel stays in its tab
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): the picker's edit shortcut works on the current row
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): load-error toasts say what failed
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix(sessions): keep an oversized invalid JSON editor in its form's run gate
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* revert: keep main's draft_only description in openapi.yaml
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
* feat: let slack connects issue a user token via user_scope
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* chore: keep trailing newline in ee-repo-ref
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* chore: bump ee-repo-ref
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix: name the provider in slack token descriptions and refresh them on reconnect
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix: drop the generated slack description when connecting another provider
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* chore: drop the slack scope pin migration, slack ignores scope on refresh
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix: clear the generated slack description on client-credentials connects too
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* chore: update ee-repo-ref to ff4d04f17721d84fb9a1f655af50ff7e4e7dcbc7
This commit updates the EE repository reference after PR #837 was merged in windmill-ee-private.
Previous ee-repo-ref: 83298dcf23574d5ed05e6c767bf1d9b067ab7a95
New ee-repo-ref: ff4d04f17721d84fb9a1f655af50ff7e4e7dcbc7
Automated by sync-ee-ref workflow.
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
* feat: show human labels for oauth scope options in the connect dialog
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* feat: always show scope checkboxes, label gdocs and gchat scopes
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* feat: offer default scopes as checkboxes for every oauth provider
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
* fix: block runs while a JSON input does not parse
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: clear json editor error on unmount and flush editors before run
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: restore validity when a nullable arg input is cleared
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: let field editors parse before the run check and reset the message on view switch
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* fix: clear the run refusal message when form validity changes
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* oauth: add gdocs and gchat providers, gchat icon
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* oauth: Google sign-in button for every accounts.google.com provider, least-privilege gchat default
- AppConnectInner: derive isGoogleSignin from the registry auth_url instead of a
hardcoded list, so gdocs/gchat/gforms/gcloud/gworkspace get Google's button.
- gchat default scopes: chat.messages is a restricted scope; default to
chat.spaces.readonly + chat.messages.create (both sensitive). chat.messages /
chat.messages.readonly stay selectable.
- BRAND_COLORS.md: GchatIcon row in sort order.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
* fix: keep flow graph rendered between deploy and navigation
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
* refactor: rename flow snapshot to avoid shadowing in loadFlow
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>