From 07501aadafabe68132da0a2b10d76cbdbb4c0036 Mon Sep 17 00:00:00 2001 From: wendrul Date: Thu, 26 Mar 2026 12:30:11 +0100 Subject: [PATCH] fixes after refactor --- cli/src/commands/schedule/schedule.ts | 20 ++++++++++---------- cli/src/commands/trigger/trigger.ts | 21 +++++++++++---------- 2 files changed, 21 insertions(+), 20 deletions(-) diff --git a/cli/src/commands/schedule/schedule.ts b/cli/src/commands/schedule/schedule.ts index 02cc167729..8aa2ddfc2e 100644 --- a/cli/src/commands/schedule/schedule.ts +++ b/cli/src/commands/schedule/schedule.ts @@ -119,14 +119,14 @@ export async function pushSchedule( } // Build preserve flags for permissioned_as - const preserveFields: { email?: string; preserve_email?: boolean } = {}; + const preserveFields: { permissioned_as?: string; preserve_permissioned_as?: boolean } = {}; if (permissionedAsContext?.userIsAdminOrDeployer) { if (schedule) { - // Updating: preserve the remote's edited_by (username) - preserveFields.preserve_email = true; - if ((schedule as Schedule).edited_by) { - preserveFields.email = (schedule as Schedule).edited_by; - log.info(`Preserving ${(schedule as Schedule).edited_by} as permissioned_as for schedule ${path}`); + // Updating: preserve the remote's permissioned_as (u/username format) + preserveFields.preserve_permissioned_as = true; + if ((schedule as Schedule).permissioned_as) { + preserveFields.permissioned_as = (schedule as Schedule).permissioned_as; + log.info(`Preserving ${(schedule as Schedule).permissioned_as} as permissioned_as for schedule ${path}`); } } else { // Creating: apply defaultPermissionedAs rule if one matches @@ -140,8 +140,8 @@ export async function pushSchedule( rule.email, permissionedAsContext.emailToUsernameCache ); - preserveFields.email = username; - preserveFields.preserve_email = true; + preserveFields.permissioned_as = `u/${username}`; + preserveFields.preserve_permissioned_as = true; log.info(`Setting schedule ${path} to run permissioned as ${rule.email} (matched rule '${rule.path_pattern}' in wmill.yaml)`); } } @@ -242,8 +242,8 @@ async function setPermissionedAs( workspace: workspace.workspaceId, path: schedulePath, requestBody: { - email: username, - preserve_email: true, + permissioned_as: `u/${username}`, + preserve_permissioned_as: true, } as any, }); log.info( diff --git a/cli/src/commands/trigger/trigger.ts b/cli/src/commands/trigger/trigger.ts index 8a2d9c11a1..c0846da651 100644 --- a/cli/src/commands/trigger/trigger.ts +++ b/cli/src/commands/trigger/trigger.ts @@ -60,6 +60,7 @@ type TriggerFile = Omit< | "workspace" | "edited_by" | "edited_at" + | "permissioned_as" | "error" | "last_server_ping" | "server_id" @@ -168,14 +169,14 @@ export async function pushTrigger( } // Build preserve flags for permissioned_as - const preserveFields: { email?: string; preserve_email?: boolean } = {}; + const preserveFields: { permissioned_as?: string; preserve_permissioned_as?: boolean } = {}; if (permissionedAsContext?.userIsAdminOrDeployer) { if (trigger) { - // Updating: preserve the remote's edited_by (username) - preserveFields.preserve_email = true; - if ((trigger as any).edited_by) { - preserveFields.email = (trigger as any).edited_by; - log.info(`Preserving ${(trigger as any).edited_by} as permissioned_as for trigger ${path}`); + // Updating: preserve the remote's permissioned_as (u/username format) + preserveFields.preserve_permissioned_as = true; + if ((trigger as any).permissioned_as) { + preserveFields.permissioned_as = (trigger as any).permissioned_as; + log.info(`Preserving ${(trigger as any).permissioned_as} as permissioned_as for trigger ${path}`); } } else { // Creating: apply defaultPermissionedAs rule if one matches @@ -189,8 +190,8 @@ export async function pushTrigger( rule.email, permissionedAsContext.emailToUsernameCache ); - preserveFields.email = username; - preserveFields.preserve_email = true; + preserveFields.permissioned_as = `u/${username}`; + preserveFields.preserve_permissioned_as = true; log.info(`Setting trigger ${path} to run permissioned as ${rule.email} (matched rule '${rule.path_pattern}' in wmill.yaml)`); } } @@ -630,8 +631,8 @@ async function setPermissionedAs( ); await updateTrigger(opts.kind, workspace.workspaceId, triggerPath, { - email: username, - preserve_email: true, + permissioned_as: `u/${username}`, + preserve_permissioned_as: true, path: triggerPath, } as any); log.info(