claude[bot]
a9e6ba392d
feat: add workspace setting to disable error handler for u/ scripts/flows ( #7634 )
...
* feat: add workspace setting to disable error handler for u/ scripts/flows
Add a new workspace setting `error_handler_muted_on_user_path` that allows
disabling the error handler for jobs related to scripts/flows that start
with the "u/" prefix (user scripts/flows).
Changes:
- Add migration to add `error_handler_muted_on_user_path` column to workspace_settings
- Update WorkspaceSettings struct and get_settings query
- Update EditErrorHandler struct and edit_error_handler API endpoint
- Update error handler cache to include the new setting
- Add skip logic in send_error_to_workspace_handler for u/ paths
- Add toggle in workspace settings UI
The implementation uses the existing cached settings to avoid additional
database queries, making it efficient.
Closes #7633
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
* all
* update ee private
* combine migrations
* sqlx
* fix: migration fixes for auto_invite JSONB column
- Fix TEXT[] to JSONB conversion using to_jsonb()
- Add GIN index on auto_invite for efficient ? operator queries
- Add index cleanup to down migration
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
* sqlx
* all
* all
* all
---------
Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-24 19:26:06 +00:00
Pyra
34492550a4
feat: better mixed versions handling ( #7628 )
2026-01-22 23:16:57 +00:00
Ruben Fiszel
c5a95d1ba1
feat: add workspace success handler with 60s TTL caching ( #7598 )
...
* feat: add workspace success handler with 60s TTL caching
Add a new workspace-level success handler that triggers when jobs complete
successfully, similar to the existing error handler. Key features:
- Database migration adds success_handler and success_handler_extra_args columns
- API endpoint for configuring success handler in workspace settings
- 60s TTL caching to avoid DB trips when checking handler existence
- Handler only triggers for top-level Script/Flow/SingleStepFlow jobs (not previews)
- Frontend UI with ScriptPicker and "Create from template" button for bunnative scripts
- EE warning alerts for CE users on success handler and critical alerts sections
- Backend tests for cache behavior and settings CRUD operations
The success handler receives: path, email, result, job_id, is_flow, workspace_id,
and started_at. It runs as the g/success_handler group.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
* fix: update RawCode struct in tests to use new field names
Update test to use ConcurrencySettingsWithCustom and DebouncingSettings
instead of the deprecated individual fields.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
* Update backend/windmill-api/src/workspaces.rs
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
* test: improve success handler test to verify job creation
Update test_success_handler_triggered_on_success to actually verify that:
- A success handler job is created in v2_job table
- The job has the correct runnable_path (configured script)
- The job runs as success_handler@windmill.dev
- The job has correct parent_job and root_job references
- The trigger starts with 'success.handler.'
This provides better test coverage for the success handler feature.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
* fix: fix success handler test and root_job parameter
- Fix test to use JobPayload::ScriptHash (JobKind::Script) instead of
JobPayload::Code (JobKind::Preview) since previews don't trigger handlers
- Add required 'lock' column to script inserts for deployed scripts
- Fix duplicate lines in workspaces.rs
- Set root_job correctly in push_success_handler
- Update test assertions to match actual behavior (root_job optimization)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
* sqlx
* refactor: reduce duplication in workspace handler cache logic
- Extract database queries into fetch_error_handler_from_db and
fetch_success_handler_from_db helper functions
- Use shared WORKSPACE_HANDLER_CACHE_TTL_SECONDS constant for 60s TTL
- Reduces code from ~116 lines to ~54 lines while maintaining identical behavior
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
* Add cache propagation warning to workspace success handler UI
Note that changes may take up to 60 seconds to propagate due to caching.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
2026-01-17 13:24:58 +00:00
Pyra
44a735eb1d
feat(git-sync): sync jobs debouncing for greatly improved perf ( #7489 )
...
* feat(git-sync): sync jobs debouncing [merge-ee-first]
* add compat
* ee repo
Signed-off-by: pyranota <pyra@duck.com >
* nit
Signed-off-by: pyranota <pyra@duck.com >
* change is_script_meets_min_version
Signed-off-by: pyranota <pyra@duck.com >
* update version
Signed-off-by: pyranota <pyra@duck.com >
* chore: update ee-repo-ref to bc904859dd66c55ebad002e8526103c73de841cd
This commit updates the EE repository reference after PR #371 was merged in windmill-ee-private.
Previous ee-repo-ref: 346d38e91776e987f88866543adbf78a9c721073
New ee-repo-ref: bc904859dd66c55ebad002e8526103c73de841cd
Automated by sync-ee-ref workflow.
---------
Signed-off-by: pyranota <pyra@duck.com >
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
2026-01-07 04:07:26 +00:00
Pyra
dd26c7d00f
nit: better logs for debouncing ( #7501 )
...
* nit: better logs for debouncing
Signed-off-by: pyranota <pyra@duck.com >
* ee ref
Signed-off-by: pyranota <pyra@duck.com >
* ee ref
Signed-off-by: pyranota <pyra@duck.com >
* remove default featrues
Signed-off-by: pyranota <pyra@duck.com >
* chore: update ee-repo-ref to ea468d0b673257c694203517b0c5df52d9cb70dd
This commit updates the EE repository reference after PR #373 was merged in windmill-ee-private.
Previous ee-repo-ref: 1196ee50bfdbc8c9fd5220d6e324334dd41293a5
New ee-repo-ref: ea468d0b673257c694203517b0c5df52d9cb70dd
Automated by sync-ee-ref workflow.
---------
Signed-off-by: pyranota <pyra@duck.com >
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2026-01-06 18:16:53 +00:00
Pyra
810347b061
fix: properly construct concurrency key ( #7504 )
...
Signed-off-by: pyranota <pyra@duck.com >
2026-01-06 18:03:07 +00:00
Pyra
95790313d3
fix: clone script by path instead of hash ( #7439 )
...
* fix: clone script by path instead of hash
Signed-off-by: pyranota <pyra@duck.com >
* Update backend/windmill-common/src/scripts.rs
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
---------
Signed-off-by: pyranota <pyra@duck.com >
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
2025-12-23 16:05:58 +00:00
Pyra
62da20a45c
feat: v2 job debouncing ( #7411 )
...
* rework everything again
Signed-off-by: pyranota <pyra@duck.com >
* updcate sqlx
Signed-off-by: pyranota <pyra@duck.com >
* update ref
Signed-off-by: pyranota <pyra@duck.com >
* fix things
Signed-off-by: pyranota <pyra@duck.com >
* fix function
Signed-off-by: pyranota <pyra@duck.com >
* final fixes
Signed-off-by: pyranota <pyra@duck.com >
* update sqlx
Signed-off-by: pyranota <pyra@duck.com >
* fix script creation
Signed-off-by: pyranota <pyra@duck.com >
* address todo
Signed-off-by: pyranota <pyra@duck.com >
* cleanup
Signed-off-by: pyranota <pyra@duck.com >
* remove dbg
Signed-off-by: pyranota <pyra@duck.com >
* cleanup
Signed-off-by: pyranota <pyra@duck.com >
* fix
Signed-off-by: pyranota <pyra@duck.com >
* fixups
Signed-off-by: pyranota <pyra@duck.com >
* fix cargo.toml
Signed-off-by: pyranota <pyra@duck.com >
* update ee repo
Signed-off-by: pyranota <pyra@duck.com >
* fix ci
Signed-off-by: pyranota <pyra@duck.com >
* nit
Signed-off-by: pyranota <pyra@duck.com >
* ref
Signed-off-by: pyranota <pyra@duck.com >
* fix
Signed-off-by: pyranota <pyra@duck.com >
* ee repo
Signed-off-by: pyranota <pyra@duck.com >
* sqlx
Signed-off-by: pyranota <pyra@duck.com >
* ee ref
Signed-off-by: pyranota <pyra@duck.com >
* remove dbg
Signed-off-by: pyranota <pyra@duck.com >
* sqlx
Signed-off-by: pyranota <pyra@duck.com >
* feat: v2 job debouncing
Signed-off-by: pyranota <pyra@duck.com >
* v2 debouncing
Signed-off-by: pyranota <pyra@duck.com >
* compat
Signed-off-by: pyranota <pyra@duck.com >
* fix all
Signed-off-by: pyranota <pyra@duck.com >
* remove legacy logic
Signed-off-by: pyranota <pyra@duck.com >
* nit
Signed-off-by: pyranota <pyra@duck.com >
* finish
Signed-off-by: pyranota <pyra@duck.com >
* nits
Signed-off-by: pyranota <pyra@duck.com >
* stage import
Signed-off-by: pyranota <pyra@duck.com >
* remove unused import
Signed-off-by: pyranota <pyra@duck.com >
* remove comments
Signed-off-by: pyranota <pyra@duck.com >
* ee ref
Signed-off-by: pyranota <pyra@duck.com >
* ee ref
Signed-off-by: pyranota <pyra@duck.com >
* nits
Signed-off-by: pyranota <pyra@duck.com >
* Update backend/windmill-queue/src/jobs.rs
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
* Update backend/windmill-common/src/runnable_settings/settings.rs
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
* Update frontend/src/lib/components/flows/DebounceLimit.svelte
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
* fix nits
Signed-off-by: pyranota <pyra@duck.com >
* force no compat in ci
Signed-off-by: pyranota <pyra@duck.com >
* better default key handling
Signed-off-by: pyranota <pyra@duck.com >
* simplify
Signed-off-by: pyranota <pyra@duck.com >
* sqlx
Signed-off-by: pyranota <pyra@duck.com >
* optimize
Signed-off-by: pyranota <pyra@duck.com >
* sqlx
Signed-off-by: pyranota <pyra@duck.com >
* fix flow step
Signed-off-by: pyranota <pyra@duck.com >
* add openapi
Signed-off-by: pyranota <pyra@duck.com >
* fix ci
Signed-off-by: pyranota <pyra@duck.com >
* ee ref
Signed-off-by: pyranota <pyra@duck.com >
* rename WMDEBUG flag
Signed-off-by: pyranota <pyra@duck.com >
* ee ref
Signed-off-by: pyranota <pyra@duck.com >
* remove gate for is_flow_step on pull
Signed-off-by: pyranota <pyra@duck.com >
* remove dead code
Signed-off-by: pyranota <pyra@duck.com >
* nits
Signed-off-by: pyranota <pyra@duck.com >
* chore: update ee-repo-ref to 71d872d27de44227b82f75a9c0879d8428684880
This commit updates the EE repository reference after PR #369 was merged in windmill-ee-private.
Previous ee-repo-ref: 4c7642dc9f7f4467fc055136bd56558b66ef2d54
New ee-repo-ref: 71d872d27de44227b82f75a9c0879d8428684880
Automated by sync-ee-ref workflow.
---------
Signed-off-by: pyranota <pyra@duck.com >
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2025-12-23 13:24:04 +00:00
Pyra
b96bf83a45
fix: better timeouts on job pull ( #7434 )
...
* fix: better timeouts on job pull
Signed-off-by: pyranota <pyra@duck.com >
* increase timeouts
Signed-off-by: pyranota <pyra@duck.com >
---------
Signed-off-by: pyranota <pyra@duck.com >
2025-12-22 21:44:35 +00:00
hugocasa
829eeed69b
fix(backend): put for loop itered in a separate table ( #7419 )
...
* fix(backend): put for loop itered in a separate table
* Update SQLx metadata
---------
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2025-12-19 19:46:46 +00:00
hugocasa
68f83a7efb
feat: restart flow from step with different flow version ( #7409 )
...
* feat: restart flow from step with different flow version
* fix tests
* fix tests
2025-12-18 20:27:51 +00:00
Pyra
fa992db75e
feat(internal): runnable settings ( #7298 )
...
* rework everything again
Signed-off-by: pyranota <pyra@duck.com >
* updcate sqlx
Signed-off-by: pyranota <pyra@duck.com >
* update ref
Signed-off-by: pyranota <pyra@duck.com >
* fix things
Signed-off-by: pyranota <pyra@duck.com >
* fix function
Signed-off-by: pyranota <pyra@duck.com >
* final fixes
Signed-off-by: pyranota <pyra@duck.com >
* update sqlx
Signed-off-by: pyranota <pyra@duck.com >
* fix script creation
Signed-off-by: pyranota <pyra@duck.com >
* address todo
Signed-off-by: pyranota <pyra@duck.com >
* cleanup
Signed-off-by: pyranota <pyra@duck.com >
* remove dbg
Signed-off-by: pyranota <pyra@duck.com >
* cleanup
Signed-off-by: pyranota <pyra@duck.com >
* fix
Signed-off-by: pyranota <pyra@duck.com >
* fixups
Signed-off-by: pyranota <pyra@duck.com >
* fix cargo.toml
Signed-off-by: pyranota <pyra@duck.com >
* update ee repo
Signed-off-by: pyranota <pyra@duck.com >
* fix ci
Signed-off-by: pyranota <pyra@duck.com >
* nit
Signed-off-by: pyranota <pyra@duck.com >
* ref
Signed-off-by: pyranota <pyra@duck.com >
* fix
Signed-off-by: pyranota <pyra@duck.com >
* ee repo
Signed-off-by: pyranota <pyra@duck.com >
* sqlx
Signed-off-by: pyranota <pyra@duck.com >
* ee ref
Signed-off-by: pyranota <pyra@duck.com >
* remove dbg
Signed-off-by: pyranota <pyra@duck.com >
* sqlx
Signed-off-by: pyranota <pyra@duck.com >
* chore: update ee-repo-ref to 505eadbff32d102ea5245a2bef88ce6f1bb95395
This commit updates the EE repository reference after PR #348 was merged in windmill-ee-private.
Previous ee-repo-ref: 195243e56cc0eab55f8890fa57297206bfe2c18c
New ee-repo-ref: 505eadbff32d102ea5245a2bef88ce6f1bb95395
Automated by sync-ee-ref workflow.
* ci: force runnable settings
Signed-off-by: pyranota <pyra@duck.com >
---------
Signed-off-by: pyranota <pyra@duck.com >
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2025-12-16 21:17:06 +00:00
Ruben Fiszel
d797342fde
fix: add history to raw app builder ( #7362 )
...
* appHistory
* appHistory
* all
* all
* all
* all
* all
* all
* all
* all
* improvements
2025-12-13 13:32:52 +00:00
Ruben Fiszel
acc7bda015
fix(backend): add presigned url support for object storage ( #7328 )
...
* presigned
* all
* all
* all
* all
* all
* all
* all
* nit
* nit
* ee-ref
* presigned
* presigned
2025-12-10 15:35:26 +00:00
hugocasa
c6fedfaa06
feat: triggers suspended mode ( #7297 )
...
* first commit
* base
* ok
* remove print
* rm packe json
* fix discard
* fix
* update .sqlx
* update
* update ref
* jobs update
* nits
* update ref
* big
* update sqlx
* fix
* update
* nits and fix
* nits
* ok
* sqlx + fix import
* better
* nit
* suspended mode draft
* UI and http triggers
* nits
* done for http triggers
* feat: better retry/error handler check
* generalize to all triggers
* fix merge conflicts
* fix listener
* nits
* nit
* fix merge conflict
* update ee ref
---------
Co-authored-by: dieriba <dieriba.pro@gmail.com >
2025-12-08 16:20:49 +00:00
Diego Imbert
e917540194
fix: improve S3 etag caching ( #7301 )
2025-12-05 18:01:27 +00:00
Pyra
fcbfd99ba9
refactor: move concurrency and debouncing settings to their own structs ( #7286 )
...
* move concurrency and debouncing settings to it's own structs
Signed-off-by: pyranota <pyra@duck.com >
* cleanup queue::jobs::pull
Signed-off-by: pyranota <pyra@duck.com >
* done
Signed-off-by: pyranota <pyra@duck.com >
* migrated the rest
Signed-off-by: pyranota <pyra@duck.com >
* implement todo!
* impmenet todo! v2
* more cleanup
* fix all
Signed-off-by: pyranota <pyra@duck.com >
* remove unrelated code
Signed-off-by: pyranota <pyra@duck.com >
* nits
Signed-off-by: pyranota <pyra@duck.com >
* do not serialize rawcode
Signed-off-by: pyranota <pyra@duck.com >
* cleanup
Signed-off-by: pyranota <pyra@duck.com >
* fixes
Signed-off-by: pyranota <pyra@duck.com >
* update ee repo ref
Signed-off-by: pyranota <pyra@duck.com >
* update ee repo
Signed-off-by: pyranota <pyra@duck.com >
* fix tests
Signed-off-by: pyranota <pyra@duck.com >
* Update ee-repo-ref.txt
---------
Signed-off-by: pyranota <pyra@duck.com >
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2025-12-04 10:11:54 +00:00
claude[bot]
1fea9bf943
fix: show related job when deployment is in progress ( #7294 )
...
* feat: show related job when deployment is in progress
- Added job_id column to deployment_metadata table to track current deployment jobs
- Updated backend to store job_id when creating dependency jobs for scripts and flows
- Modified deployment status API endpoints to include job_id in responses
- Updated frontend to display clickable job link in "Deployment in progress" badge
- Added OpenAPI schema updates for new job_id field
Resolves #7293
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
* update
---------
Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
2025-12-04 09:50:07 +00:00
Pyra
d36760bff7
feat: workspace dependencies ( #7124 )
...
* commit raw requirements
Signed-off-by: pyranota <pyra@duck.com >
* raw requirements
Signed-off-by: pyranota <pyra@duck.com >
* implement `parse_annotation`
Signed-off-by: pyranota <pyra@duck.com >
* more progress on wdeps
Signed-off-by: pyranota <pyra@duck.com >
* more progress
Signed-off-by: pyranota <pyra@duck.com >
* fixes
Signed-off-by: pyranota <pyra@duck.com >
* more progress
Signed-off-by: pyranota <pyra@duck.com >
* fixes
Signed-off-by: pyranota <pyra@duck.com >
* cli improvements + raw deps
Signed-off-by: pyranota <pyra@duck.com >
* cleanup
Signed-off-by: pyranota <pyra@duck.com >
* fix python versions
Signed-off-by: pyranota <pyra@duck.com >
* progress
Signed-off-by: pyranota <pyra@duck.com >
* update :)
Signed-off-by: pyranota <pyra@duck.com >
* add MaybeLock
Signed-off-by: pyranota <pyra@duck.com >
* go WIP
Signed-off-by: pyranota <pyra@duck.com >
* fix python ignoring py version from requirements
Signed-off-by: pyranota <pyra@duck.com >
* optimize php
Signed-off-by: pyranota <pyra@duck.com >
* require admin to alter
Signed-off-by: pyranota <pyra@duck.com >
* fix(cli): flow generateLocks raw deps
Signed-off-by: pyranota <pyra@duck.com >
* progress in checklist
Signed-off-by: pyranota <pyra@duck.com >
* fix agent workers
Signed-off-by: pyranota <pyra@duck.com >
* nits
Signed-off-by: pyranota <pyra@duck.com >
* nits
Signed-off-by: pyranota <pyra@duck.com >
* nit: remove default features
Signed-off-by: pyranota <pyra@duck.com >
* oh-wow
Signed-off-by: pyranota <pyra@duck.com >
* remove dbg!
Signed-off-by: pyranota <pyra@duck.com >
* nits
Signed-off-by: pyranota <pyra@duck.com >
* add indexes
Signed-off-by: pyranota <pyra@duck.com >
* cleanup
Signed-off-by: pyranota <pyra@duck.com >
* nits
Signed-off-by: pyranota <pyra@duck.com >
* remove todos
Signed-off-by: pyranota <pyra@duck.com >
* fix cli
Signed-off-by: pyranota <pyra@duck.com >
* add debug flag
Signed-off-by: pyranota <pyra@duck.com >
* cli: remove noise
Signed-off-by: pyranota <pyra@duck.com >
* fix cli
Signed-off-by: pyranota <pyra@duck.com >
* remove todos
Signed-off-by: pyranota <pyra@duck.com >
* trigger deps correctly
Signed-off-by: pyranota <pyra@duck.com >
* fix frontend
Signed-off-by: pyranota <pyra@duck.com >
* fix frontend again
Signed-off-by: pyranota <pyra@duck.com >
* finally fix frontend
Signed-off-by: pyranota <pyra@duck.com >
* ee repo ref
Signed-off-by: pyranota <pyra@duck.com >
* fix all
Signed-off-by: pyranota <pyra@duck.com >
* more fixes...
Signed-off-by: pyranota <pyra@duck.com >
* remove test
Signed-off-by: pyranota <pyra@duck.com >
* Update backend-test.yml
* comment out legacy test
Signed-off-by: pyranota <pyra@duck.com >
* fix ci
Signed-off-by: pyranota <pyra@duck.com >
* fix ci?
Signed-off-by: pyranota <pyra@duck.com >
* comment out thing
Signed-off-by: pyranota <pyra@duck.com >
* ignore test
Signed-off-by: pyranota <pyra@duck.com >
* ci
Signed-off-by: pyranota <pyra@duck.com >
* base fixture
Signed-off-by: pyranota <pyra@duck.com >
* fix regression
Signed-off-by: pyranota <pyra@duck.com >
* fix docs links
Signed-off-by: pyranota <pyra@duck.com >
* update min version
Signed-off-by: pyranota <pyra@duck.com >
* simplify
* implement cache for get_latest
Signed-off-by: pyranota <pyra@duck.com >
* move to workspace settings
Signed-off-by: pyranota <pyra@duck.com >
* sqlx + migration
Signed-off-by: pyranota <pyra@duck.com >
* more migrations
Signed-off-by: pyranota <pyra@duck.com >
* use box pin
Signed-off-by: pyranota <pyra@duck.com >
* nit
Signed-off-by: pyranota <pyra@duck.com >
---------
Signed-off-by: pyranota <pyra@duck.com >
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
2025-11-28 16:00:11 +00:00
hugocasa
914ee6c881
feat: flow for loop squashing ( #7107 )
...
* feat: flow for loop optimization
* fix: make dedicated flows work with flow nodes
* fix: transform dedicated inputs + better error handling + differentiate squash from same worker
* fix builds
* fix build
* fix build
* make dedicated worker private
* update ee ref
* frontend nits
* nit
* add trace to dedicated worker
* update ee ref
* Update ee-repo-ref.txt
---------
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2025-11-25 17:25:34 +01:00
Ruben Fiszel
f2bae31763
buffer cloud hosted usage
2025-11-18 09:40:57 +00:00
dieriba
61928c4e2c
feat: webhook by flow version ( #7062 )
...
* ok
* done
* update sqlx and repo ref
* fix
2025-11-14 14:36:24 +00:00
Diego Imbert
592707224a
Trigger kind filter ( #7123 )
...
* Pass JobTriggerKind to push() to store it in v2_job
* fix compiltion
* frontend job trigger kind filter
* SQL trigger_kind filtering
* fix animated button
* ee repo ref
* Fix "Show schedule" + trigger kind = schedule
* duplicate email
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
2025-11-13 10:50:04 +00:00
Ruben Fiszel
4fb32d156e
nit free quotas
2025-11-12 14:36:18 +00:00
Pyra
31c2168291
fix: proper error handling in pulled job preprocessor ( #7098 )
...
* fix: proper error handling in pulled job preprocessor
Signed-off-by: pyranota <pyra@duck.com >
* follow up for merge
Signed-off-by: pyranota <pyra@duck.com >
* make it safe
Signed-off-by: pyranota <pyra@duck.com >
* clippy
Signed-off-by: pyranota <pyra@duck.com >
* remove unused import
Signed-off-by: pyranota <pyra@duck.com >
* use String instead of Value
Signed-off-by: pyranota <pyra@duck.com >
* update ee ref
Signed-off-by: pyranota <pyra@duck.com >
* implement Error for PulledJobResultToErr
Signed-off-by: pyranota <pyra@duck.com >
* updatesqlx
Signed-off-by: pyranota <pyra@duck.com >
---------
Signed-off-by: pyranota <pyra@duck.com >
2025-11-10 13:43:50 +00:00
dieriba
f8f61fd89c
feat: env var in flow ( #6852 )
2025-11-07 18:38:55 +00:00
Ruben Fiszel
57d81ba598
fix: dep jobs improvements ( #7081 )
...
* dep jobs improvements
* update
2025-11-07 11:04:53 +00:00
Ruben Fiszel
9d0e8f7c63
fix oidc token issue
2025-11-06 13:05:55 +00:00
Ruben Fiszel
f6898ed20d
fix: add workspace error handler cache for improved performance
2025-11-04 15:26:19 +00:00
Ramtin Mesgari
cedfd183d9
refactor: remove legacy database views v2_as_queue and v2_as_completed_job ( #6689 )
...
* refactor: remove legacy database views v2_as_queue and v2_as_completed_job
Signed-off-by: Ramtin Mesgari <26694963+iamramtin@users.noreply.github.com >
* fix tests
* fix jobs.rs
* end
* fix
* improvement
* improvement
---------
Signed-off-by: Ramtin Mesgari <26694963+iamramtin@users.noreply.github.com >
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
2025-11-04 13:08:02 +00:00
Ruben Fiszel
416bbaa3b4
nit
2025-11-04 10:14:55 +00:00
Ruben Fiszel
bd7152978b
internal(backend): mini completed job + improvements ( #7042 )
...
* mini completed job
* mini completed job
* sqlx
* restore dedi
* restore dedi
* nits
* fix
2025-11-04 09:31:11 +00:00
Pyra
74182afbe6
fix: disable debouncing for scheduled jobs ( #7015 )
...
* disable debouncing for scheduled jobs
Signed-off-by: pyranota <pyra@duck.com >
* bump
---------
Signed-off-by: pyranota <pyra@duck.com >
Co-authored-by: Ruben Fiszel <ruben@windmill.dev >
2025-10-30 18:15:35 +00:00
Ruben Fiszel
1ebdc55146
fix: prioritize dependency jobs by default
2025-10-30 09:26:21 +00:00
Ruben Fiszel
68565aadae
improve indexer indexes
2025-10-30 06:47:26 +00:00
Ruben Fiszel
bd9c091ad3
nit tracing info for schedules
2025-10-30 05:14:15 +00:00
Ruben Fiszel
804640b253
fix: improve jobs runs page performance ( #6942 )
2025-10-27 14:29:53 +00:00
Ruben Fiszel
8913807d66
fix: fix dependency jobs on CE
2025-10-25 06:50:18 +00:00
Ruben Fiszel
9a75add1c0
improve stack size usage ( #6936 )
...
* oom
* final
* final
2025-10-24 22:08:54 +00:00
Pyra
00953e3a3f
fix(debouncing): fix perf issues and re-enable debouncing ( #6932 )
...
* fix(debouncing): fix perf issues and re-enable debouncing
Signed-off-by: pyranota <pyra@duck.com >
* add debounce data in clone_script
Signed-off-by: pyranota <pyra@duck.com >
* update sqlx cache
Signed-off-by: pyranota <pyra@duck.com >
---------
Signed-off-by: pyranota <pyra@duck.com >
2025-10-24 15:24:46 +00:00
Ruben Fiszel
5d4abe37a4
temporarily disable debouncing
2025-10-24 10:50:51 +00:00
Ruben Fiszel
1349e03640
temporarily disable debouncing
2025-10-24 10:49:38 +00:00
hugocasa
3208f908ca
fix(cloud): better errors when failing to get team plan status ( #6908 )
...
* fix(cloud): better errors when failing to get team plan status
* better errors
* fix build
* fix build
2025-10-23 20:19:10 +00:00
Pyra
242a57f840
feat: job debouncing ( #6878 )
...
* feat(EE): job debouncing
Signed-off-by: pyranota <pyra@duck.com >
* remove 'script' file
Signed-off-by: pyranota <pyra@duck.com >
* more work
Signed-off-by: pyranota <pyra@duck.com >
* properly gate it behind enterprise
Signed-off-by: pyranota <pyra@duck.com >
* update ee repo ref
Signed-off-by: pyranota <pyra@duck.com >
* change ee repo ref again
Signed-off-by: pyranota <pyra@duck.com >
* remove unused variable
Signed-off-by: pyranota <pyra@duck.com >
* feat(EE): implement TODOs and enhance tracing for job debouncing
- Add database index on script(workspace_id, debounce_key) for efficient lookups
- Update minimum version requirement to 1.564.0 throughout codebase
- Add tracing warnings when debouncing is disabled due to worker version mismatch
- Fix all documentation links from TODO placeholders to proper URLs
- Replace Gauge icon with Timer icon for debouncing UI elements
- Update placeholder text and tooltips with clear descriptions
Co-authored-by: Pyra <pyranota@users.noreply.github.com >
* create -> crate
Signed-off-by: pyranota <pyra@duck.com >
* remove index
Signed-off-by: pyranota <pyra@duck.com >
* some updates
Signed-off-by: pyranota <pyra@duck.com >
* fix once more
Signed-off-by: pyranota <pyra@duck.com >
* fix it once more
Signed-off-by: pyranota <pyra@duck.com >
* Remove flow step debouncing, keep top-level flow debouncing
- Remove debounce fields from RawScript and FlowScript FlowModuleValue variants
- Remove debounce fields from JobPayload::FlowScript and RawCode
- Update raw_script_to_payload function signature
- Remove debouncing UI from flow step runtime settings
- Remove debouncing toggle handler and indicator badge
- Preserve top-level flow debouncing in FlowSettings
Co-authored-by: Pyra <pyranota@users.noreply.github.com >
* cleanup
Signed-off-by: pyranota <pyra@duck.com >
* fixup claude's work
Signed-off-by: pyranota <pyra@duck.com >
* cleanup: remove dbg! statements, update min version to 1.566.0, add comprehensive comments
- Removed all dbg! macro calls from production code
- Updated MIN_VERSION_SUPPORTS_DEBOUNCING from 1.564.0 to 1.566.0
- Added comprehensive documentation comments explaining:
- Debouncing feature purpose and mechanics
- Database schema for debounce_key and debounce_stale_data tables
- Version check logic and guard functions
- Improved code clarity and maintainability
Co-authored-by: Pyra <pyranota@users.noreply.github.com >
* improve fallback
Signed-off-by: pyranota <pyra@duck.com >
* remove comments from old migration
Signed-off-by: pyranota <pyra@duck.com >
* fix pull
Signed-off-by: pyranota <pyra@duck.com >
* fix once more
Signed-off-by: pyranota <pyra@duck.com >
* Update frontend/src/lib/components/ScriptBuilder.svelte
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
* add sqlx cache
Signed-off-by: pyranota <pyra@duck.com >
* fix: frontend CI - fix debounce field names and remove leftover flow step debouncing
- Fix ScriptBuilder.svelte: change custom_debounce_key to debounce_key
- Add debounce_key and debounce_delay_s fields to NewScript schema in openapi.yaml
- Regenerate frontend types from OpenAPI spec
- Remove leftover flow step debouncing code from FlowModuleComponent.svelte
- Remove debounce fields from RawScript in openflow.openapi.yaml
- Remove unused Timer import from FlowModuleHeader.svelte
All frontend checks now passing (0 errors, 0 warnings)
Co-authored-by: Pyra <pyranota@users.noreply.github.com >
* fix ci
Signed-off-by: pyranota <pyra@duck.com >
* remove unused import
Signed-off-by: pyranota <pyra@duck.com >
* fix ci again
Signed-off-by: pyranota <pyra@duck.com >
* udpate ee repo ref
Signed-off-by: pyranota <pyra@duck.com >
* CI doesn't want to be fixed but I still try
Signed-off-by: pyranota <pyra@duck.com >
* nits
Signed-off-by: pyranota <pyra@duck.com >
* ci...
Signed-off-by: pyranota <pyra@duck.com >
* Update ee-repo-ref.txt
* safer migration
Signed-off-by: pyranota <pyra@duck.com >
* reduce noise in logs
Signed-off-by: pyranota <pyra@duck.com >
* fix cli for scripts
Signed-off-by: pyranota <pyra@duck.com >
* nit
Signed-off-by: pyranota <pyra@duck.com >
---------
Signed-off-by: pyranota <pyra@duck.com >
Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: Pyra <pyranota@users.noreply.github.com >
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2025-10-23 20:18:08 +00:00
Pyra
f4f8425b56
debouncing edge case ( #6891 )
...
* fix: debouncing edge case
* Update SQLx metadata
---------
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2025-10-22 07:15:28 +00:00
Alexander Petric
9f848ef489
feat: allow optionally forcing ipv4 for reqwest ( #6883 )
2025-10-21 15:46:41 +00:00
Ruben Fiszel
02a220aece
refactor: improve usage table behavior to eliminate synchronous row locks ( #6863 )
...
* refactor: improve usage table behavior to eliminate synchronous row locks
Replace synchronous INSERT...RETURNING with SELECT + async UPDATE pattern:
- Add check_usage_limits() to read current usage without row locks
- Add increment_usage_async() to update usage in background task
- Refactor job push logic to use optimistic validation
- Simplify job completion tracking with better error handling
This eliminates blocking row locks on the usage table during job creation,
significantly improving throughput and reducing contention.
Note: Requires running 'cargo sqlx prepare' with database access to update
the query cache in .sqlx/ directory.
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-authored-by: Ruben Fiszel <rubenfiszel@users.noreply.github.com >
* Update SQLx metadata
* refactor: optimize cloud usage checks with caching and conditional queries
- Add 60s cache for superadmin status checks to reduce DB load
- Skip unnecessary user usage query for premium workspaces
- Use existing team plan status cache (already implemented in windmill-common)
- Update check_usage_limits to accept check_user_usage parameter
- Add sqlx query cache for conditional user usage query
This optimization eliminates redundant database queries during job creation,
particularly for premium workspaces where user usage tracking is not needed.
Co-authored-by: Ruben Fiszel <rubenfiszel@users.noreply.github.com >
---------
Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: Ruben Fiszel <rubenfiszel@users.noreply.github.com >
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2025-10-18 07:47:31 +00:00
Ruben Fiszel
4136a42b48
re-route agent workers job if needed prior to applying concurrency limits
2025-10-17 17:15:05 +00:00
Pyra
6c533d5070
perf: remove unnecessary db call ( #6853 )
...
* perf: remove unnecessary db call
Signed-off-by: pyranota <pyra@duck.com >
* Update SQLx metadata
---------
Signed-off-by: pyranota <pyra@duck.com >
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2025-10-17 11:51:55 +00:00
Ruben Fiszel
c3e284bc96
split main async with a box pin
2025-10-16 20:31:46 +00:00