Skip to content

feat(FR-2801): pre-populate deployment launcher form fields from deployment preset#7224

Merged
graphite-app[bot] merged 1 commit into
mainfrom
05-04-feat_fr-2801_pre-populate_deployment_launcher_form_fields_from_deployment_preset
May 4, 2026
Merged

feat(FR-2801): pre-populate deployment launcher form fields from deployment preset#7224
graphite-app[bot] merged 1 commit into
mainfrom
05-04-feat_fr-2801_pre-populate_deployment_launcher_form_fields_from_deployment_preset

Conversation

@agatha197
Copy link
Copy Markdown
Contributor

@agatha197 agatha197 commented May 4, 2026

Resolves #7223 (FR-2801)

Summary

  • Add launcherFormValues field to QuickDeployInput in useDeploymentLauncher, serialized to the formValues URL parameter when navigating to the launcher
  • Extend the GraphQL fragment/query in ModelCardDrawer and VFolderDeployModal to fetch runtimeVariant, execution, cluster, and deploymentDefaults fields from deployment presets
  • Pass all preset values (startup command, runtime variant, cluster mode, cluster size, replica count, open-to-public) via launcherFormValues when the user clicks "Configure and Deploy" from either entry point

Copy link
Copy Markdown
Contributor Author

agatha197 commented May 4, 2026


How to use the Graphite Merge Queue

Add either label to this PR to merge it via the merge queue:

  • flow:merge-queue - adds this PR to the back of the merge queue
  • flow:hotfix - for urgent changes, fast-track this PR to the front of the merge queue

You must have a Graphite account in order to use the merge queue. Sign up using this link.

An organization admin has required the Graphite Merge Queue in this repository.

Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue.

This stack of pull requests is managed by Graphite. Learn more about stacking.

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 4, 2026

Coverage Report for react-coverage (./react)

Status Category Percentage Covered / Total
🔵 Lines 6.55% 1783 / 27187
🔵 Statements 5.42% 1978 / 36429
🔵 Functions 5.21% 296 / 5676
🔵 Branches 3.82% 1293 / 33800
File Coverage
File Stmts Branches Functions Lines Uncovered Lines
Changed Files
react/src/components/ModelCardDrawer.tsx 0% 0% 0% 0% 51-445
react/src/components/VFolderDeployModal.tsx 0% 0% 0% 0% 68-562
react/src/hooks/useDeploymentLauncher.ts 0% 0% 0% 0% 67-268
Generated in workflow #243 for commit c68eddb by the Vitest Coverage Report Action

@github-actions github-actions Bot added size:L 100~500 LoC and removed size:M 30~100 LoC labels May 4, 2026
@agatha197 agatha197 force-pushed the 05-04-feat_fr-2801_pre-populate_deployment_launcher_form_fields_from_deployment_preset branch from b861d6b to 4eb4d5a Compare May 4, 2026 12:20
@agatha197 agatha197 force-pushed the 04-28-feat_fr-2762_add_deployment_preset_detail_view_in_service_launcher branch from 66854b5 to 0e510f4 Compare May 4, 2026 12:20
@agatha197 agatha197 force-pushed the 05-04-feat_fr-2801_pre-populate_deployment_launcher_form_fields_from_deployment_preset branch from 4eb4d5a to 429ee22 Compare May 4, 2026 12:46
@agatha197 agatha197 force-pushed the 04-28-feat_fr-2762_add_deployment_preset_detail_view_in_service_launcher branch 2 times, most recently from b1b12a2 to d340ddb Compare May 4, 2026 12:55
@agatha197 agatha197 force-pushed the 05-04-feat_fr-2801_pre-populate_deployment_launcher_form_fields_from_deployment_preset branch 2 times, most recently from cba12b7 to 7c11d2c Compare May 4, 2026 13:20
@agatha197 agatha197 marked this pull request as ready for review May 4, 2026 13:20
@agatha197 agatha197 requested review from Copilot, ironAiken2, nowgnuesLee and yomybaby and removed request for Copilot May 4, 2026 13:20
@graphite-app graphite-app Bot force-pushed the 04-28-feat_fr-2762_add_deployment_preset_detail_view_in_service_launcher branch from d340ddb to 19f8ba6 Compare May 4, 2026 13:30
@graphite-app graphite-app Bot changed the base branch from 04-28-feat_fr-2762_add_deployment_preset_detail_view_in_service_launcher to graphite-base/7224 May 4, 2026 13:51
@agatha197 agatha197 force-pushed the 05-04-feat_fr-2801_pre-populate_deployment_launcher_form_fields_from_deployment_preset branch from 7c11d2c to e7974b9 Compare May 4, 2026 14:17
Copilot AI review requested due to automatic review settings May 4, 2026 14:17
@agatha197 agatha197 force-pushed the graphite-base/7224 branch from 19f8ba6 to 923fa09 Compare May 4, 2026 14:17
@agatha197 agatha197 changed the base branch from graphite-base/7224 to main May 4, 2026 14:17
@graphite-app
Copy link
Copy Markdown

graphite-app Bot commented May 4, 2026

Merge activity

…oyment preset (#7224)

Resolves #7223 ([FR-2801](https://lablup.atlassian.net/browse/FR-2801))

## Summary
- Add `launcherFormValues` field to `QuickDeployInput` in `useDeploymentLauncher`, serialized to the `formValues` URL parameter when navigating to the launcher
- Extend the GraphQL fragment/query in `ModelCardDrawer` and `VFolderDeployModal` to fetch `runtimeVariant`, `execution`, `cluster`, and `deploymentDefaults` fields from deployment presets
- Pass all preset values (startup command, runtime variant, cluster mode, cluster size, replica count, open-to-public) via `launcherFormValues` when the user clicks "Configure and Deploy" from either entry point

[FR-2801]: https://lablup.atlassian.net/browse/FR-2801?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
@graphite-app graphite-app Bot force-pushed the 05-04-feat_fr-2801_pre-populate_deployment_launcher_form_fields_from_deployment_preset branch from e7974b9 to c68eddb Compare May 4, 2026 14:18
@graphite-app graphite-app Bot merged commit c68eddb into main May 4, 2026
12 checks passed
@graphite-app graphite-app Bot deleted the 05-04-feat_fr-2801_pre-populate_deployment_launcher_form_fields_from_deployment_preset branch May 4, 2026 14:20
@github-pages github-pages Bot temporarily deployed to github-pages May 4, 2026 14:21 Inactive
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds support for pre-populating the Deployment Launcher (create flow) with values coming from a selected deployment preset when navigating from the Model Store drawer or the VFolder deploy modal. This reduces duplicate user input by serializing selected preset values into the launcher’s formValues URL param (including resolving preset imageId to an image canonical name).

Changes:

  • Extend useDeploymentLauncher.openLauncher() to accept launcherFormValues and serialize them into the formValues query param, resolving imageId -> environments.version via a Relay fetchQuery.
  • Extend preset queries in ModelCardDrawer and VFolderDeployModal to fetch the preset fields needed for launcher prefill (runtime variant, execution spec, cluster, defaults).
  • Wire both entry points’ “Configure and Deploy” actions to pass preset-derived values through launcherFormValues.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
react/src/hooks/useDeploymentLauncher.ts Adds launcherFormValues support and resolves preset imageId to canonical image name before URL serialization.
react/src/components/VFolderDeployModal.tsx Fetches additional preset fields and passes selected preset values into openLauncher() for launcher prefill.
react/src/components/ModelCardDrawer.tsx Fetches additional preset fields and passes top-ranked preset values into openLauncher() for launcher prefill.

Comment on lines +137 to +151
runtimeVariant {
name
}
execution {
imageId
startupCommand
}
cluster {
clusterMode
clusterSize
}
deploymentDefaults {
openToPublic
replicaCount
}
Comment on lines +228 to +234
if (
input.launcherFormValues &&
Object.keys(input.launcherFormValues).length > 0
) {
const { imageId, ...restFormValues } = input.launcherFormValues;
const urlFormValues: Record<string, unknown> = { ...restFormValues };

agatha197 pushed a commit that referenced this pull request May 18, 2026
Part of the recent main-branch docs catch-up plan (Work Item 11).

New page documenting the Deployment Preset feature introduced over Q1–Q2 2026:

- FR-2750 (#7091) feature spec
- FR-2761 (#7125) admin create / edit / delete UI
- FR-2762 (#7127) preset detail view in VFolderDeployModal
- FR-2801 (#7224) pre-populate launcher fields from preset
- FR-2805 (#7233) URLSearchParams in preset navigation
- FR-2827 (#7274) clickable deployment tags filter the list
- FR-2810 (#7242) batch image canonical names on admin preset list
- FR-2773 (#7153) preserve auto-selected resourcePresetId

New sections:
1. What is a Deployment Preset?
2. (Admin) Manage Deployment Presets — list, filter, create, edit, delete (typed-confirm)
3. Using a Preset when Deploying a Model — preset detail, auto/manual deploy paths
4. Pre-populated Launcher Fields
5. Filtering by Tags

Also adds book.config.yaml navigation entries under the Model Serving category in all 4 languages.

Updated in all 4 languages (en/ko/ja/th). Screenshots flagged with TODO markers for separate capture. Linked from model_serving.md (PR B) so PR B's cross-references now resolve.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L 100~500 LoC

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Pre-populate deployment launcher form fields from deployment preset

2 participants