feat(FR-2801): pre-populate deployment launcher form fields from deployment preset#7224
Conversation
How to use the Graphite Merge QueueAdd either label to this PR to merge it via 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. |
Coverage Report for react-coverage (./react)
File Coverage
|
||||||||||||||||||||||||||||||||||||||||||||||||||
b861d6b to
4eb4d5a
Compare
66854b5 to
0e510f4
Compare
4eb4d5a to
429ee22
Compare
b1b12a2 to
d340ddb
Compare
cba12b7 to
7c11d2c
Compare
d340ddb to
19f8ba6
Compare
7c11d2c to
e7974b9
Compare
19f8ba6 to
923fa09
Compare
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
e7974b9 to
c68eddb
Compare
There was a problem hiding this comment.
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 acceptlauncherFormValuesand serialize them into theformValuesquery param, resolvingimageId -> environments.versionvia a RelayfetchQuery. - Extend preset queries in
ModelCardDrawerandVFolderDeployModalto 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. |
| runtimeVariant { | ||
| name | ||
| } | ||
| execution { | ||
| imageId | ||
| startupCommand | ||
| } | ||
| cluster { | ||
| clusterMode | ||
| clusterSize | ||
| } | ||
| deploymentDefaults { | ||
| openToPublic | ||
| replicaCount | ||
| } |
| if ( | ||
| input.launcherFormValues && | ||
| Object.keys(input.launcherFormValues).length > 0 | ||
| ) { | ||
| const { imageId, ...restFormValues } = input.launcherFormValues; | ||
| const urlFormValues: Record<string, unknown> = { ...restFormValues }; | ||
|
|
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.

Resolves #7223 (FR-2801)
Summary
launcherFormValuesfield toQuickDeployInputinuseDeploymentLauncher, serialized to theformValuesURL parameter when navigating to the launcherModelCardDrawerandVFolderDeployModalto fetchruntimeVariant,execution,cluster, anddeploymentDefaultsfields from deployment presetslauncherFormValueswhen the user clicks "Configure and Deploy" from either entry point