* fix(cli): keep a raw app's custom_path on sync pull
The pull rendered raw_app.yaml without custom_path, so every pull removed
the line and every push --dry-run listed the file as modified, while the
deployed app still had it and push still sent it.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix(cli): send custom_path on app update only when it changed
The backend requires admin for any update carrying custom_path, so the value
a pull now writes into raw_app.yaml made every non-admin push of that app fail.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* feat(cli): sync an app's custom path as a workspace-specific file
Unless app routes are workspace-prefixed, a custom path is unique across the
instance, so a value carried in the app file every workspace shares can never
be promoted. Sync now renders it as <app>.<workspace>.custom_path.yaml next
to the app folder, always workspace-specific. A push applies only the target
workspace's file and leaves the deployed custom path alone without one; a
checkout that still has custom_path in its app file converges on push, and
the next pull moves it out.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* test(cli): drop the custom_path rationale repeated from changedCustomPath
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix(cli): apply a custom path pushed with its raw app, and converge a cleared one
The raw-app bundle collapse kept one change per group and dropped the
custom-path file grouped with it, so a push editing both deployed only the
app. App files and their custom-path file now group under the app path in
both folder layouts, and the collapse keeps the custom-path change.
A cleared custom path (custom_path: '') has no file in the export, so the
push diff listed it as added forever; an empty value with nothing deployed
is now in sync.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix(cli): never read a file inside a flow or app folder as workspace-specific
The workspace-name segment of the workspace-specific patterns spans '/', so a
raw-app asset such as settings.prod.custom_path.json was taken for a
workspace's file and dropped from the pull. Like fileset children, files
inside a flow or app folder are content of that item, whatever their name.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix(cli): recognize a custom-path file only beside its app
isCustomPathFile excluded app and flow folders but still matched a fileset
child such as data.fileset/settings.custom_path.json, so a push dropped
edits to it and a pull renamed it. A custom-path file is now identified by
where it sits: its name is <app>[.<workspace>].custom_path.<ext> and no part
of its directory is an item's folder.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
* fix: keep instance groups when editing auto-invite and push them from sync
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
* fix: compare settings.yaml without undeclared instance groups on push
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
* fix: read a missing auto_invite as empty when diffing settings.yaml on push
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
* chore: update ee-repo-ref to f2fced19fcae81de7f6dac545010ce404c052e1b
This commit updates the EE repository reference after PR #813 was merged in windmill-ee-private.
Previous ee-repo-ref: cf4258c1232720ca3b82db2b22ea1fb4bca9533e
New ee-repo-ref: f2fced19fcae81de7f6dac545010ce404c052e1b
Automated by sync-ee-ref workflow.
---------
Co-authored-by: Claude Opus 5 <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>
* fix(cli): keep the workspace color when settings are synced from git
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
* docs(cli): name the sync direction consistently in the identity-field comments
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
* fix(cli): apply the workspace color from settings.yaml only when the file sets one
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
---------
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>