Commit Graph

5965 Commits

Author SHA1 Message Date
Ruben Fiszel
38d4ebf6d3 nit svelte 5 2025-07-19 06:59:49 +00:00
Ruben Fiszel
442b644438 nit fast in more cases 2025-07-19 00:07:16 +00:00
Ruben Fiszel
d928a6c285 nit fast in more cases 2025-07-19 00:06:26 +00:00
Ruben Fiszel
aa1d02c0b6 nit 2025-07-18 23:54:46 +00:00
Ruben Fiszel
93accc824a improve ob loader consistency 2025-07-18 23:54:04 +00:00
Ruben Fiszel
7315212fc0 implement SSE fallback 2025-07-18 23:10:15 +00:00
claude[bot]
4f993c82b5 feat: implement SSE for job updates polling (#6174)
* feat: implement SSE for job updates polling

- Add /getupdate_sse/:id endpoint for real-time job updates via Server-Sent Events
- SSE streams job status, logs, progress, and flow status updates
- Auto-stops streaming when job completes
- Frontend uses EventSource with graceful fallback to polling on errors
- Reduces server load and improves real-time responsiveness
- Update OpenAPI spec with new SSE endpoint definition

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-authored-by: Ruben Fiszel <rubenfiszel@users.noreply.github.com>

* all

* all

* v1

* rename test job loader

* iter2

* nit

* all

* all

* improve

* upgrade

* try catch assets json parse

* only display loader of custom component if custom component is rendered

* Fix required properties (#6221)

* whitelabelling nits

* remove fdsfs (#6222)

* add refresh on worker tag select

* whitelabel nits

* merge

* merge

* done

* nit fix

* all

* app db

* all

* all

---------

Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
Co-authored-by: Ruben Fiszel <rubenfiszel@users.noreply.github.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
Co-authored-by: Tammo Ippen <tammo.ippen@posteo.de>
Co-authored-by: Diego Imbert <70353967+diegoimbert@users.noreply.github.com>
2025-07-18 22:48:51 +00:00
hugocasa
6a012a87ed fix: app s3 multi upload policy (#6228) 2025-07-18 13:14:55 +00:00
hugocasa
7b4d0d6abb remove chat circular dep (#6226) 2025-07-18 11:55:23 +00:00
centdix
b099d96a60 feat(ai chat): search for relevant hub scripts and npm packages in script mode (#6215)
* draft

* move tool

* also use hub search

* add types in context of the chat

* reuse code

* cleaning

* better docs fetching

* cleaning

* adapt limit based on context window

* cleaning

* fix

* fix
2025-07-18 11:36:05 +00:00
Ruben Fiszel
5acd3c21c0 nit fix 2025-07-18 10:40:37 +00:00
Ruben Fiszel
2119da83f1 nit fix 2025-07-18 10:40:21 +00:00
Ruben Fiszel
ae1793ecd1 whitelabel nits 2025-07-18 10:22:27 +00:00
Ruben Fiszel
1f48a05100 add refresh on worker tag select 2025-07-18 10:10:43 +00:00
Diego Imbert
a7f6d74e05 remove fdsfs (#6222) 2025-07-18 10:07:02 +00:00
Ruben Fiszel
673f10095d whitelabelling nits 2025-07-18 09:05:49 +00:00
Ruben Fiszel
2a739cb04b only display loader of custom component if custom component is rendered 2025-07-18 08:43:31 +00:00
Ruben Fiszel
1e8c181f8e try catch assets json parse 2025-07-17 23:29:22 +00:00
Diego Imbert
2ab5345e61 Assets refactor (#6217)
* Moved logic to FlowAssetsProvider

* Remove assetsMap in flow

* do not parse everything on mount + only check for missing assets fields

* add assets field in backend

* remove fallbackAccessTypes

* better structure and less queries / parsing

* Fix assets not showing when pulling raw_flow from jobs

* flow assets ctx for job run

* Fix transitive assets fetching

* Fix input args asset node

* enablePathScriptAndFlowAssets flag

* edit btn for variable

* untrack refresh

* move parseInputArgsAssets

* Assets tab in runs

* Update FlowStatusViewerInner to svelte 5 + fix asset sync bug

* avoid toast error on bad resource

* fetch res metadata for input arg asset

* Job assets viewer in run page

* r/w selector

* remove indigo badge

* store alt_access_type state in ScriptEditor

* Don't parse assets in flow script editor

* Add alt_access_type in backend

* show Read as selected by default to avoid giving the feeling of having made a decision

* keep alt_access_type when reparsing in flow raw scripts

* Remove variable asset kind, and save assets for scripts

* remove all backend asset parsing

* R/W/RW selector button nits

* fix insert into assets not saving alt access type

* support named arguments in python asset parser

* improve asset usage drawer R/W indicator

* update legacy $res: syntax

* reactivity issue

* remove last variable asset stuff

* sqlx prepare

* tooltip explainer

* deprecated variable asset nit
2025-07-17 22:15:01 +00:00
dieriba
5f364100f3 feat: granular token scopes (#6093)
* base

* add scopes in the UI

* remove legacy scope, unified create token into a components

* fix layout, convert old scope to new scope

* update scope

* update ui, and clear scope

* remove desc

* almsot there

* fix path

* fix delete and scope resource path matching

* update scope

* update scope and error message

* nits and fix logic

* nits and fix

* added multiple resource and jobs scope for script and flow

* add check_scope for endpoint

* clean front and improve fronetend code

* fix resource validation logic and backward compatibility with old scope

* fix frontend state and scope checks logic

* update scopes

* fix height

* nits: better_naming

* fix route

* fix add missing import

* fix import and move fn

* update repo ref

* fix import

* fix query and nits

* nits

* fix ,missing import

* fix

* revert add admin protection

* handle run action correctly

* fix

* add check scopes to some endpoint

* fix and nits

* nits

* remove unused import

* nits

* add chevron when domain is exapanded

* fix border bottom

* nits adds resource path button

* nits

* fix

* nits

* nits

* nits

* fix merge

* fix

* UI nits

* update repo ref

* add lazy static

* update scopes

---------

Co-authored-by: HugoCasa <hugo@casademont.ch>
2025-07-17 15:18:40 +00:00
Guilhem
9a0b75be84 correctly set flow initial job status on running preview (#6214) 2025-07-17 14:02:06 +00:00
Diego Imbert
1842157bd5 remove indigo badge (#6210)
* remove indigo badge

* Revert "remove indigo badge"

This reverts commit 843f446034.

* fix wrong badge

* missing prettifyHeader props in ArgInput / SchemaForm
2025-07-17 11:43:09 +00:00
Ruben Fiszel
07b785dcc3 fix: support enum for array list as multiselect 2025-07-16 22:31:15 +00:00
centdix
827e06b4b3 feat(aichat): add logs api endpoint as tool (#6197)
* add logs

* add logs search + better load tools logic

* use json

* nit

* only add for ee

* nit

* filter out search after first fail

* Revert "filter out search after first fail"

This reverts commit 2abf0db6e5a1be84e67d1a153281b74d448cb5cd.

* call endpoint to know if it is available

* cleaning

* Apply suggestion from @graphite-app[bot]

Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>

* fix

* draft

* call enabled endpoint

* not workspaced

* remove from system prompt if not enterprise

* fix eeref command

* update ee ref

---------

Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
2025-07-16 17:59:47 +00:00
Guilhem
c076d1332e fix(frontend): add error handler on trigger delete (#6208) 2025-07-16 17:26:48 +00:00
HugoCasa
1d62dd0fc3 feat: better explanation for dev key renewal (#6209)
* fix: hide s3 catalog picker in anonymous apps

* nit reactivity upload text

* no signed s3 object warning

* remove warning

* fix check

* feat: better dev key explanation
2025-07-16 17:26:37 +00:00
HugoCasa
b68193f804 fix: hide s3 catalog picker in anonymous apps (#6204)
* fix: hide s3 catalog picker in anonymous apps

* nit reactivity upload text

* no signed s3 object warning

* remove warning

* fix check
2025-07-16 16:44:19 +00:00
Guilhem
290daec0fa fix(frontend): enable delete triggers on detail page (#6206)
* Allways show trigger update button

* allow delete deployed trigger
2025-07-16 16:44:06 +00:00
Diego Imbert
9e8748b7c8 fix batch rerun reactivity issue (#6205) 2025-07-16 14:30:15 +00:00
Diego Imbert
2dae9ba0a7 Fix unsatisfying delete button in flow module when clicking fast (#6203) 2025-07-16 10:52:57 +00:00
centdix
7457401877 add small help text (#6200) 2025-07-16 10:47:07 +00:00
HugoCasa
038c179a43 fix: cancel autocomplete on escape + autocomplete qol (#6201)
* fix: cancel autocomplete on escape + autocomplete qol

* missing
2025-07-16 10:46:43 +00:00
Guilhem
475bebdcfc fix flow dev sync (#6198) 2025-07-16 10:28:01 +00:00
Alexander Petric
aa37f643e7 feat: git sync improvements (#6182)
* init checkpoint

* ui second pass...

* round 1 backend + saving settings + detecting changes...

* checkpoint

* fix openapi

* saving + correct wmill.yaml diff

* cli refactor

* cli and tests refactor done

* cli multi workspace support

* cli support skip core types to align with ui

* new test framework

* sqlx

* openapi spec

* frontend

* sync + settings changes

* some fixes

* some fixes

* security: Remove hardcoded EE license key, use environment variable only

- Remove hardcoded license key from containerized test backend
- Environment variable EE_LICENSE_KEY now required for EE features
- License key no longer stored in database during tests

* sqlx

* tests

* fixing tests

* fix tests

* checkpoint

* checkpoint

* cli build

* frontend - cli exchange

* settings match

* ee repo ref

* npm check

* openapi

* tests

* checkpoint

* cli + tests

* reset to preview on changes

* merge issue ee

* cleanup

* hubscript

* simplifications

* ee repo ref

* cli fixes

* fix sync and add tests

* extra test

* git sync settings / key change aware

* ee-repo ref

* ee-repo ref

* ee repo ref

* ee ref

* review 1

* ee ref

* Update frontend/src/lib/components/PullGitRepoPopover.svelte

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

* Update frontend/src/routes/(root)/(logged)/workspace_settings/+page.svelte

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>

* ee ref

* remove extra includes from ui

---------

Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-07-15 16:25:31 +00:00
HugoCasa
9053a931ce feat: multi s3 arg input (#6187)
* feat: multi s3 arg input

* nits
2025-07-15 15:42:25 +00:00
Guilhem
885f711e03 fix(frontend): fix dev graph not loading (#6190)
* fix(frontend): fix dev graph not loading

* nit
2025-07-15 14:15:54 +00:00
Ruben Fiszel
cca8e748aa fix: only close app dropdown when action is done 2025-07-15 13:51:45 +00:00
HugoCasa
b58c46a504 feat(frontend): app static and user resource picker default values (#6179) 2025-07-15 09:52:54 +00:00
Alexander Petric
d562625474 feat: add oauth client_credentials support (#6110)
* feat: add oauth client_credentials support

* refactor: client_id / secret at instance level

* trim

* only visma / custom oauth

* ee ref

* Update SQLx metadata

---------

Co-authored-by: GitHub Action <action@github.com>
2025-07-15 01:50:22 +02:00
HugoCasa
00ab0e8f38 fix: retry telemetry and renewal (#6175)
* feat: retry telemetry and renewal

* Update ee-repo-ref.txt

---------

Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2025-07-14 14:29:52 +00:00
Ruben Fiszel
0c8bc6077a load secondary storages only on need 2025-07-14 13:00:29 +00:00
Ruben Fiszel
b50f810d64 nit check 2025-07-14 09:47:03 +00:00
Ruben Fiszel
50d4ed452a add wm_renderer 2025-07-14 09:42:58 +00:00
Ruben Fiszel
d0d680bc16 close dropdown on click 2025-07-14 09:08:08 +00:00
Ruben Fiszel
3459f6a5f1 nit script editor chat ai default mode on open 2025-07-13 14:10:54 +00:00
Ruben Fiszel
50c9efbab9 nit 2025-07-11 18:22:47 +00:00
Ruben Fiszel
11cf60f4a5 improve edit history behavior (#6166) 2025-07-11 18:19:47 +00:00
HugoCasa
328ef605ad feat: triggers error handler and retry (#6138)
* feat: http triggers error handling and retries

* feat: handle sync http triggers

* feat: triggers retry and error handling

* feat: frontend and preprocessor

* fix build

* minimum allow dead code

* check workspace tags in schedules

* fix flow preprocesor + hub urls

* update ee ref

* nit

* nit

* final nits

* schedule UI nits

* migrate workspace settings to svelte 5
2025-07-11 18:55:23 +02:00
Diego Imbert
4eb66ca3f2 Clone fix + asset page ui nit (#6165)
* clone library

* nit ui assets page fix
2025-07-11 15:40:16 +00:00
Diego Imbert
433341b295 feat: assets as a primary concept (#6125)
* assets migration

* parse assets (duckdb)

* iterate on assets

* S3 object Preview

* remove pagination

* filterText

* better occurence list

* tweak

* assets in JobPreview

* clone impl

* AssetsDetectedBadge

* improve DbManagerButton + asset dropdown button

* edit resource btn

* warning when incorrect resource

* +Resource in DuckDB

* +S3 Object editor bar

* nit fix rename

* flow asset badge

* More Generic OnChange

* Highlight assets used in modules

* Show occurence count in flow

* Better UX, avoid moving parts

* nit

* Asset nodes

* move to dedicated Asset ctx

* fix layoutNodes not handling first assetsMap

* explore asset btn in flow asset node

* correct offset

* single computeAssetNodes function

* Fix y positioning of nodes with assets

* resource editor

* write mode node (ui)

* accessType in ctx + fix insert button positioning

* right positioning when mixing read and write nodes

* right positioning when mixing R and W assets

* Better layout fix algorithm

* listAssetsByUsage and asset nodes on transitive usages

* refactor + remove linkAssets

* Refactor to allow for custom R/W modes

* AssetsDropdownButton in flow script editor

* R/W/RW selection and changes node pos in flow

* layoutNodes doesnt need recompute now

* fix wrong assumption that nodes recompute when assets change

* r/w/rw multi toggle

* MultiToggle cool animation + clearable

* rename + 1px nit

* remove mini toggle button group, use ToggleButtonGroup

* Combinator parser that detects R / W asset context

* nit fix missing flex-1

* missing order by

* better ui indication for access type

* special x offset case when only one asset node for clarity

* parse getResource in TS with swc ecma parser

* support load and write s3 detection in TS

* Python asset parser

* support wmill api calls without special $res: or s3:// syntax

* detect out of context asset uris python

* do not use access type override when not ambiguous in flow graph

* parse_assets match case in rust

* AsRef<str> refactor

* From impl

* Save flow assets

* Save script asset usages + fixes + save fallback access types

* asset sub icon

* max total asset node width to avoid overlap

* small refactor

* don't parse comments in duckdb assets

* fix assets clearing on parse error

* fix script asset save in wrong place

* load initial asset fallback access types

* support variables

* ui fixes

* Support S3Object as URI in TS client

* support new syntax in python client

* Support +S3Object in EditorBar for TS and python

* Reduce resource requests in assets page

* import windmill client when necessary

* update s3Types.d.ts

* nit fix

* Show input resources and s3 objects as assets

* improve asset icons

* DarkModeObserver refactor

* asset page tabs

* Moved resource variables and s3object pages to assets tabs

* fetch resource usages

* Get variables usages

* move assets usage dropdown to component

* Revert "move assets usage dropdown to component"

This reverts commit 622ea4ab12.

* Revert "Get variables usages"

This reverts commit b11ced4e29.

* Revert "fetch resource usages"

This reverts commit aa5187ad4b.

* Revert "Moved resource variables and s3object pages to assets tabs"

This reverts commit 4430487be4.

* Revert "asset page tabs"

This reverts commit dacc2f0da5.

* move assets usage dropdown to component

* asset icon in asset pages

* tooltip

* details

* Storage selector in S3 File Picker

* make edge less opaque

* Refactor computeAssetNodes to separate in and out nodes

* AssetsOverflowedNode

* nits

* fix assets not being parsed in flows sometimes

* show asset kind and resource_type

* ui nits

* support res:// in duckdb

* add banner for old deployments

* Fix permissionning

* fix broken disable /enable all

* assets page view permission for operators

* Disable ExploreAssetButton for operators

* asset kind as subtitle

* do not spam getResource in assets page. prob. revert fail

* update assets page on workspace change

* reload storage names on ws change

* delete assets on archive / deletion

* sqlx prepare

* missing update when updating user

* add indexes on asset

* better message

* missing loadInit: false

* dead code

* use transaction

* typo

* update package.json

* update package.json

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
2025-07-11 09:56:53 +00:00