Skip to content

feat(DT-4079): miscellaneous WD UI fixes#3511

Merged
rossnelson merged 7 commits into
mainfrom
dt-4079
Jun 12, 2026
Merged

feat(DT-4079): miscellaneous WD UI fixes#3511
rossnelson merged 7 commits into
mainfrom
dt-4079

Conversation

@rossnelson

@rossnelson rossnelson commented Jun 8, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Hide "Set Current Version" in version actions menu when the version is already Current
  • Re-arrange WD detail page header: Create New Version (primary), More Actions dropdown (View Workflows, Ramp to Unversioned Workers, Delete)
  • Add Ramp to Unversioned Workers modal with a percentage input; calls set-ramping-version API with empty build_id
  • Show alert banner on the deployment detail page when unversioned workers are actively ramping, with inline Edit and Delete actions
  • Remove border box from ComputeBadge — render as plain [icon] label matching the Namespace Region style
  • [DT-4077 gap] Add "Unset Current" to the current version's actions menu — calls set-current-version with an empty version string, which transitions the version to Draining and eventually Drained, allowing it to be deleted. Without this, a deployment could never be fully emptied (and therefore never deleted) because one version is always pinned as current.

Test plan

  • Current version row no longer shows "Set Current Version" in its actions menu; instead shows "Unset Current"
  • Clicking "Unset Current" on the current version transitions it to Draining then Drained
  • Deployment detail header shows "Create New Version" (primary) + "More Actions" dropdown
  • More Actions contains View Workflows, Ramp to Unversioned Workers, and Delete
  • Ramp to Unversioned Workers opens a modal with percentage input; confirms and refreshes
  • When unversioned workers are ramping, a yellow banner appears with Edit/Delete inline actions
  • Compute provider shows as icon + label without a border box in the version list

@rossnelson rossnelson requested a review from a team as a code owner June 8, 2026 19:35
@vercel

vercel Bot commented Jun 8, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
holocene Ready Ready Preview, Comment Jun 12, 2026 1:07pm

Request Review

@temporal-cicd

temporal-cicd Bot commented Jun 8, 2026

Copy link
Copy Markdown
Contributor
Warnings
⚠️

📊 Strict Mode: 2 errors in 2 files (0.2% of 904 total)

src/lib/components/deployments/delete-deployment-modal.svelte (1)
  • L31:20: Argument of type '(() => void) | undefined' is not assignable to parameter of type '(e: CustomEvent) => void'.
src/lib/components/deployments/ramp-unversioned-modal.svelte (1)
  • L31:18: Argument of type '(() => void) | undefined' is not assignable to parameter of type '(e: CustomEvent) => void'.

Generated by 🚫 dangerJS against acf5941

{open}
confirmText={translate('common.confirm')}
cancelText={translate('common.cancel')}
on:confirmModal={() => onConfirm?.(percentage)}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • ⚠️ Argument of type '(() => void) | undefined' is not assignable to parameter of type '(e: CustomEvent) => void'.

@rossnelson rossnelson marked this pull request as ready for review June 11, 2026 14:26
{open}
confirmText=""
cancelText={translate('common.close')}
hideConfirm

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • ⚠️ Argument of type '(() => void) | undefined' is not assignable to parameter of type '(e: CustomEvent) => void'.

@bilal-karim

Copy link
Copy Markdown
Member

Remove border box from ComputeBadge — render as plain [icon] label matching the Namespace Region style

I noticed in #3518 PR screenshots that the border is around the icon + label:

image

Apologies if this wasn't clear, but it should be like Namespace Regions in the list table. I border should be around the cloud provider icon only.

Screenshot 2026-06-11 at 11 37 55 AM

Comment thread src/lib/services/deployments-service.ts Outdated
Comment thread src/lib/services/deployments-service.ts Outdated
Comment thread src/lib/components/deployments/version-table-row.svelte Outdated
Comment thread src/lib/components/deployments/deployment-table-row.svelte Outdated
Comment thread src/lib/components/deployments/deployment-table-row.svelte Outdated
Comment thread src/lib/pages/deployment.svelte Outdated
Comment thread src/lib/pages/deployment.svelte Outdated
Comment thread src/lib/components/deployments/ramp-unversioned-modal.svelte Outdated
Comment thread src/lib/pages/deployment.svelte Outdated
Comment thread src/lib/components/deployments/delete-deployment-modal.svelte
Comment thread src/lib/services/deployments-service.ts Outdated
Comment thread src/lib/components/deployments/deployment-table-row.svelte Outdated
rossnelson and others added 7 commits June 12, 2026 09:01
- Hide "Set Current Version" menu item for versions already current
- Re-arrange deployment detail header: Create New Version as primary,
  More Actions menu with View Workflows / Ramp to Unversioned / Delete
- Add Ramp to Unversioned Workers modal with percentage input
- Show alert banner when unversioned workers are ramping with Edit/Delete actions
- Remove border box from ComputeBadge — use plain icon + label styling
Calls set-current-version with an empty version string, transitioning
the version to Draining then Drained so it can be deleted. Prerequisite
for fully emptying a deployment (DT-4077).
…tion to modal

Replace custom banner div with Alert component; remove inline Edit/Delete
buttons. Move the remove action into the Ramp to Unversioned Workers modal
as a destructive footer button, shown only when ramping is active.
Adds a kebab actions menu to the deployments list with a Delete item.
Shows a blocked modal when versions exist (all must be removed first),
or a destructive confirm modal requiring the user to type DELETE when
the deployment has no versions.
- Use camelCase buildId (not build_id) in ramp/remove API calls
- Add conflictToken support to removeRampingUnversionedWorkers
- Add error handling to handleRemoveRampUnversioned
- Fix 0% ramp falsy check (use != null instead of truthiness)
- Remove unused Button import from deployment.svelte
- Replace invisible-class pattern with {#if} in ramp modal
- Add confirm modal + error handling for Unset Current action
- Include deployment name in delete deployment modal description
Matches the Namespace Region style — border wraps the cloud provider
icon alone, with the label rendered as plain text beside it.
…elete

- unsetCurrentDeploymentVersion: use buildId (not version) and pass conflictToken
- version-table-row: pass conflictToken through to unset call
- deployment-table-row: fetch full deployment on modal open to get conflictToken
@rossnelson rossnelson enabled auto-merge (squash) June 12, 2026 13:08
@rossnelson rossnelson merged commit b7f5623 into main Jun 12, 2026
18 checks passed
@rossnelson rossnelson deleted the dt-4079 branch June 12, 2026 13:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants