Commit Graph
14757 Commits
Author SHA1 Message Date
Ruben FiszelandClaude Opus 5 1a50765295 fix: let an outside write that lands during a discard keep the item
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-15 09:46:12 +02:00
Ruben FiszelandClaude Opus 5 47b6934266 fix: leave a command's own value replacement out of the edit count
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-15 09:33:02 +02:00
Ruben FiszelandClaude Opus 5 d17f60945a fix: count a re-read's edits from before its row went out
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-15 09:19:05 +02:00
Ruben FiszelandClaude Opus 5 718a7b516e fix: send a held item's queued row before re-reading it
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-15 09:11:41 +02:00
Ruben FiszelandClaude Opus 5 8478b4ea98 refactor: write the item a panel config stands for without becoming it
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-15 00:45:39 +02:00
Ruben FiszelandClaude Opus 5 866050aaf6 fix: carry the stamp with a value handed between entries
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 20:49:41 +02:00
Ruben FiszelandClaude Opus 5 2bedaf1afe fix: ignore an ask older than the one that already holds, its value included
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 20:39:50 +02:00
Ruben FiszelandClaude Opus 5 6e98542839 refactor: stamp every ask of an item so the one asked last holds
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 20:27:04 +02:00
Ruben FiszelandClaude Opus 5 8d0966d902 fix: keep a parked draft from outranking a discard asked after it
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 20:13:20 +02:00
Ruben FiszelandClaude Opus 5 4ea45a83aa fix: hold a discard superseded by a later draft, whether or not the move lands
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 20:00:03 +02:00
Ruben FiszelandClaude Opus 5 226cf97d1f fix: let the ask that came last hold, a draft rewritten unchanged included
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 19:40:23 +02:00
Ruben FiszelandClaude Opus 5 2d48f7f0f9 fix: let the last outside write at a key win over a discard and a parked draft
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 19:29:13 +02:00
Ruben FiszelandClaude Opus 5 4ffa65538f fix: let a discard asked before a move lands win over the edits it drops
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 19:12:23 +02:00
Ruben FiszelandClaude Opus 5 984e958a72 fix: keep an outside draft written to an editor still loading behind a move
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 18:49:21 +02:00
Ruben FiszelandClaude Opus 5 aca3aef0ec fix: keep a draft written at a key while a save is moving onto it
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 18:36:44 +02:00
Ruben FiszelandClaude Opus 5 981ba6f882 fix: name the item on screen in the drawers' title, anchor and picker
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 18:22:19 +02:00
Ruben FiszelandClaude Opus 5 a043f76f0c fix: carry a run-as-only edit onto the entry a move replaces it with
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 18:22:19 +02:00
Ruben FiszelandClaude Opus 5 228da1bfca fix: follow a variable the drawer renamed and stayed open on
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 18:05:28 +02:00
Ruben FiszelandClaude Opus 5 1648336e3e fix: keep the edits of an editor a move replaces at its key
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 18:05:28 +02:00
Ruben FiszelandClaude Opus 5 901e096380 refactor: gate every command on a move heading for its key
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 17:40:27 +02:00
Ruben FiszelandClaude Opus 5 3984495071 fix: hold every entry at a key a save is moving onto until the move lands
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 17:20:10 +02:00
Ruben FiszelandClaude Opus 5 21a41575c5 fix: write an item a save moves onto after the commands queued there
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 17:00:00 +02:00
Ruben FiszelandClaude Opus 5 1c65d17611 fix: tell the list about a draft-only discard that lands off screen
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 15:59:54 +02:00
Ruben FiszelandClaude Opus 5 6371a34b5d fix: record the enabled state a schedule write leaves, not the one sent
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vn1jCHUcAdaG9C4NsUehF
2026-09-14 15:59:54 +02:00
Diego ImbertandClaude Opus 5 4aa2b0eeba fix: keep a caller's draft cell in step when a live item owns the row
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ViTUkt4czrvZdxdWwxqRAQ
2026-09-13 06:09:01 +02:00
Diego ImbertandClaude Opus 5 c51a932eed fix: close only the drawer opening whose draft discard was awaited
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ViTUkt4czrvZdxdWwxqRAQ
2026-09-13 06:09:01 +02:00
Diego ImbertandClaude Opus 5 db791f0493 fix: enable a draft-only schedule the way deploying it will
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ViTUkt4czrvZdxdWwxqRAQ
2026-09-13 06:09:01 +02:00
Diego Imbert e3658ec288 Merge remote-tracking branch 'origin/main' into in-realm-entity-editors-p2
# Conflicts:
#	frontend/src/lib/components/ResourceEditor.svelte
#	frontend/src/lib/components/ResourceEditorDrawer.svelte
#	frontend/src/lib/components/VariableEditor.svelte
#	frontend/src/lib/components/triggers/schedules/ScheduleEditorInner.svelte
2026-09-13 05:30:31 +02:00
Ruben Fiszelandrubenfiszel 62d4632fad chore(main): release 1.811.0 (#11098)
* chore(main): release 1.811.0

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
v1.811.0
2026-09-12 10:06:30 +02:00
Ruben FiszelandClaude Opus 5 2a21efa11b fix: stop a resource delete from taking variables it does not own (#11102)
* fix: stop a resource delete from taking variables it does not own

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Nb6mKJWUACuPKA3wZRuyy7

* fix: key the ws_specific cleanup on what the delete actually removed

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Nb6mKJWUACuPKA3wZRuyy7

* fix: attribute a cascaded variable to the resource that actually referenced it

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Nb6mKJWUACuPKA3wZRuyy7

* docs: state the real constraint behind the pre-transaction referrer scan

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Nb6mKJWUACuPKA3wZRuyy7

---------

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-12 10:02:52 +02:00
Ruben FiszelandClaude Opus 5 c90d1d95c2 refactor: make the app policy's principal the authority for its identity (#10440)
* refactor: make the app policy's principal the authority for its identity

* fix: align the app backfill with the sibling migration and audit the uncached address

* chore: refresh the sqlx cache after rebasing onto the merged base

* fix: resolve the app execution address uncached, it decides the job's authorization

* chore: cache the EE queries at the ref this branch pins

* chore: cache the EE queries at the ref this branch pins

* fix: derive the app draft's on-behalf-of address on read

* chore: cache the query the draft derivation test added

* fix: derive the app identity on the draft-table and version reads too

* docs: state the draft resolver's authorization contract

* fix: resolve a draft's principal against workspace membership only

* chore: cache the membership lookup the draft resolver added

* fix: drop an unresolvable draft's address instead of leaving it stale

* perf: evict the address cache on change so app dispatch can read it

* fix: evict on superadmin role changes, not only address changes

* refactor: make the app policy's address optional instead of derived on read

* fix: follow an external superadmin's rename into the apps that name them

* docs: state the removal gate once, and correctly

* refactor: drop the app-policy version constant that gated nothing

* docs: drop the last reference to the removed constant

* perf: read the address cache everywhere now that eviction reaches every replica

* fix: keep persisted addresses off the cache the poller evicts asynchronously

* docs: state where the cached address is accepted and where it is not

* docs: keep the cache rule in one place and drop the stale premise

* docs: sort the two lookups by how long a wrong answer lives

* fix: resolve the schedule address uncached where it is written to the row

* docs: name the release this actually ships in

* perf: evict a superadmin's key per workspace instead of the whole cache

* fix: evict every alias a superadmin principal can be spelled as

* docs: describe the trigger as it is

* docs: cover the round-tripped read in the cache rule

* docs: record why a stale dispatch address cannot escalate

* fix: validate a dispatch address against the principal's live binding

* fix: carry the validated address through to the job row and token

* fix: record the validated address on the job row, not the one handed in

* test: run the substep tag check as the non-superadmin it means to test

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

* fix: rewrite a stored app address that disagrees with its principal

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

* docs: record the accepted staleness window of the cached dispatch address

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

* fix: record the validated address on the job's audit row

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

* docs: record the accepted rename race of pre-transaction identity resolution

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

* docs: separate the app's stored address from the derived one in the resolver doc

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

* docs: describe the job identity fast path the push comments skipped

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

* fix: backfill a legacy group-prefixed username as the group it names

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

* fix: resolve a schedule edit's identity before opening its transaction

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

* fix: never resolve a disabled member to a same-named superadmin

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

* docs: state what the email-change notify buys, and rewrap two comment lines

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

* fix: keep a group's runnables when offboarding a legacy group-prefixed member

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

* fix: read the app author from the stored address, as execution does

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

* docs: record the rename race's full consequence as a known, accepted limitation

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

* docs: record the keep-target group address case as a known, accepted limitation

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JY4bBCR1q2c5XB8s2r7Ysc

---------

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-12 09:10:15 +02:00
e877b5f2e8 fix: clear a stale git auto-pull failure and show the status time (#11100)
* fix: show when the last git auto-pull status was recorded

* chore: bump ee-repo-ref for the auto-pull status fix

* fix: show the git auto-pull status age with TimeAgo instead of a year-less date

* test: pin that a stale auto-pull recovery cannot overwrite a newer state

* chore: bump ee-repo-ref for the conditional auto-pull recovery

* fix: keep TimeAgo counting past the first hour in noSeconds mode

* chore: bump ee-repo-ref for the clear_auto_pull_failure contract note

* fix: guard TimeAgo's boundary scheduler against invalid dates and pin same-head newer failures

* chore: bump ee-repo-ref for the timestamp-guarded auto-pull recovery

* test: cover a same-second newer failure surviving a stale auto-pull recovery

* chore: bump ee-repo-ref for the whole-failure recovery match

* test: name the recovery helper after its input, not its staleness

* chore: update ee-repo-ref to c6df9fdd9826efb40d3586a9f97d17dee98ac6ef

This commit updates the EE repository reference after PR #793 was merged in windmill-ee-private.

Previous ee-repo-ref: 6aff80b80cae4944a4a78a6b9244019bc37f368b

New ee-repo-ref: c6df9fdd9826efb40d3586a9f97d17dee98ac6ef

Automated by sync-ee-ref workflow.

---------

Co-authored-by: Ruben Fiszel <ruben@windmill.dev>
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2026-09-12 08:55:35 +02:00
hugocasaandClaude Opus 5 864e5f02ec fix: bring back Publish to Hub for scripts (#11097)
* fix: bring back Publish to Hub for scripts

Publishing to the Hub moved to the folder-level flow, which publishes a
whole project and needs a workspace admin. That left no way to share a
single script, which is what private hubs mostly use the Hub for.

Restore the "Publish to Hub" item on the script detail page and in the
script list row menu. Both open the Hub's script submission form prefilled
with the script, on whichever Hub the instance is configured to use, and
are hidden when the instance disables the Hub. Flows and apps still reach
the Hub only inside a project.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* fix: open the Hub tab before fetching, and hide Publish to Hub from operators

The script list row has to fetch the script before it can build the Hub
URL, and Safari refuses window.open after an await, so the tab never
opened there. Claim it inside the click with claimTab(), point it at the
Hub once the script loads, and close it with a toast if the fetch fails.
A blocked popup falls back to a late window.open, and says so if that is
blocked too.

Operators can't write scripts, so the row menu now hides the item from
them, as the script page's menu already does. The script page opens the
Hub with noopener, and scriptToHubUrl takes the script instead of eight
positional arguments.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-12 08:55:12 +02:00
670628b300 fix: accept any hub version of the git sync script in the token check (#11099)
* [ee] fix: accept any hub version of the git sync script in the token check

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Sm7h47G1rC3qYADfkCtTiZ

* chore: update ee-repo-ref to c9b043f2860fdae150c8c4bf03f3ec98b7f300e5

This commit updates the EE repository reference after PR #792 was merged in windmill-ee-private.

Previous ee-repo-ref: 7815dafb68d34ec5fbeb0645a095fbb6eae8d4a0

New ee-repo-ref: c9b043f2860fdae150c8c4bf03f3ec98b7f300e5

Automated by sync-ee-ref workflow.

---------

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-authored-by: windmill-internal-app[bot] <windmill-internal-app[bot]@users.noreply.github.com>
2026-09-12 08:53:14 +02:00
Ruben FiszelandClaude Opus 5 4afb9aa677 fix: bundle deployed bun scripts whose only pin is on a dynamic import (#11096)
* fix: bundle deployed bun scripts whose only pin is on a dynamic import

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EH42obCk6WJnc7N4Fa25JH

* fix: retry the no-db prebundle too, and guard bundles bun builds as written

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EH42obCk6WJnc7N4Fa25JH

* fix: name the bundle retry after the import specifiers it unpins

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EH42obCk6WJnc7N4Fa25JH

---------

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-12 00:02:38 +02:00
Ruben FiszelandClaude Opus 5 9fc50a23fb feat: make snowflake_oauth work as a dbt warehouse on every engine (#11095)
* feat: make snowflake_oauth work as a dbt warehouse on every engine

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011gD7E1cPVhX1kLsB4fAH3b

* fix: scope the early token refresh to dbt, never follow jail symlinks

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011gD7E1cPVhX1kLsB4fAH3b

* fix: lock early token refreshes per account, keep the profile until the new one renders

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011gD7E1cPVhX1kLsB4fAH3b

* fix: hold the refresh lock until the new token is written

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011gD7E1cPVhX1kLsB4fAH3b

* fix: poll the refresh lock with a bound instead of pinning a connection

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011gD7E1cPVhX1kLsB4fAH3b

* refactor: drop the early OAuth refresh from the dbt warehouse route

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011gD7E1cPVhX1kLsB4fAH3b

* fix: keep endpoint keys like token_uri in the profile identity

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011gD7E1cPVhX1kLsB4fAH3b

* fix: mask access key ids with the secrets they pair with

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011gD7E1cPVhX1kLsB4fAH3b

---------

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-12 00:00:17 +02:00
Diego ImbertandClaude Opus 5 7c39415c3a fix: start new schedules enabled, keep ws versions off created variables
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ViTUkt4czrvZdxdWwxqRAQ
2026-09-11 19:24:17 +02:00
Diego ImbertandClaude Opus 5 185d0fcd37 fix: drop a refused discard's parked delete so a page close keeps it
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ViTUkt4czrvZdxdWwxqRAQ
2026-09-11 19:24:17 +02:00
Ruben Fiszelandrubenfiszel 4a293cf77a chore(main): release 1.810.0 (#11079)
* chore(main): release 1.810.0

* Apply automatic changes

---------

Co-authored-by: rubenfiszel <275584+rubenfiszel@users.noreply.github.com>
v1.810.0
2026-09-11 19:02:12 +02:00
Diego ImbertandClaude Opus 5 763e853980 fix: pin a deployed schedule's config to its stored path
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ViTUkt4czrvZdxdWwxqRAQ
2026-09-11 18:55:45 +02:00
Diego ImbertandClaude Opus 5 6f10e59a90 fix: drop a rejected draft on reload, keep a refused discard's hint
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ViTUkt4czrvZdxdWwxqRAQ
2026-09-11 18:55:45 +02:00
Diego ImbertandClaude Opus 5 0d767d00fb refactor: make the acting workspace and user explicit in the entity editors (#11031)
* refactor: make the acting workspace and user explicit in the entity editors

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YLxwAsiXJ1Au8CBDBmH7iY

* fix: resolve the acting user in new-item mode and for the navigation workspace

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YLxwAsiXJ1Au8CBDBmH7iY

* fix: discard acting-user lookups that no longer describe the acting workspace

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YLxwAsiXJ1Au8CBDBmH7iY

* refactor: own the acting-user resolution in one composable

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YLxwAsiXJ1Au8CBDBmH7iY

* fix: key the acting-user cache by a Map and re-ask after a failed lookup

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YLxwAsiXJ1Au8CBDBmH7iY

* fix: re-ask a failed acting-user lookup when an editor opens a new session

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YLxwAsiXJ1Au8CBDBmH7iY

* fix: forget a failed acting-user lookup when its workspace stops being the acting one

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YLxwAsiXJ1Au8CBDBmH7iY

* fix: drop a stale acting-user refusal on arrival rather than on departure

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YLxwAsiXJ1Au8CBDBmH7iY

* fix: let the navigation user answer for the navigation workspace unconditionally

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YLxwAsiXJ1Au8CBDBmH7iY

* docs: mark prototype-key workspace ids as unsupported by the entity editors

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YLxwAsiXJ1Au8CBDBmH7iY

---------

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-11 16:51:00 +00:00
Diego ImbertandClaude Opus 5 712473d5b6 fix: edit, not re-create, an item the drawer created and kept open
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ViTUkt4czrvZdxdWwxqRAQ
2026-09-11 18:29:19 +02:00
Diego ImbertandClaude Opus 5 8b06fee6f3 fix: keep refused discards, one writer per key, toggles past saves
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ViTUkt4czrvZdxdWwxqRAQ
2026-09-11 18:29:19 +02:00
Diego ImbertandClaude Opus 5 29d1ab3850 fix: keep a new schedule's template readable after its first load
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ViTUkt4czrvZdxdWwxqRAQ
2026-09-11 18:04:47 +02:00
Diego ImbertandClaude Opus 5 82c2b057d1 fix: clear rows at move targets, save exact diffs, keep toggles clean
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ViTUkt4czrvZdxdWwxqRAQ
2026-09-11 18:04:47 +02:00
AlexRV12andClaude Opus 5 b50de89479 feat: run a deployed flow through the chat's argument form (#11085)
* feat: run a deployed flow through the chat's argument form

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vHs7Jr4UDSbUe2KGjugMw

* refactor: drop the unread dynselect helper from the deployed flow run form

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vHs7Jr4UDSbUe2KGjugMw

* fix: skip the preprocessor when the chat runs a deployed flow

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vHs7Jr4UDSbUe2KGjugMw

* test: pin run_flow steering with ai_evals cases

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vHs7Jr4UDSbUe2KGjugMw

* refactor: inline the deployed flow schema and trim the eval draft check

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vHs7Jr4UDSbUe2KGjugMw

* docs: correct the stale draft-validation comment on the flow test-run eval

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vHs7Jr4UDSbUe2KGjugMw

---------

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-11 15:37:53 +00:00
Diego ImbertandClaude Opus 5 92a6ab6c4e test: cover saveEach and schedule config normalization
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ViTUkt4czrvZdxdWwxqRAQ
2026-09-11 17:29:17 +02:00
Diego ImbertandClaude Opus 5 594475815f refactor: drop the item store's rename command, which nothing calls
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ViTUkt4czrvZdxdWwxqRAQ
2026-09-11 17:29:17 +02:00
Diego ImbertandClaude Opus 5 619b61632c fix: update, not create, a schedule opened on its trigger draft config
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ViTUkt4czrvZdxdWwxqRAQ
2026-09-11 17:29:17 +02:00