feat(FR-2830): show deployment-ready alert with chat shortcut on deployment detail#7281
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
|
||||||||||||||||||||||||||||||||||||||||||||||||||
Merge activity
|
…oyment detail (#7281) Resolves #7280 ([FR-2830](https://lablup.atlassian.net/browse/FR-2830)) ## Summary - Add a `success` Alert at the top of the deployment configuration section that appears when `deployment.metadata.status === 'READY'`, mirroring the existing "Service is ready" affordance on the legacy endpoint detail page. - The alert exposes a primary **Test in Chat** button that navigates to `/chat?endpointId=<deploymentId>` so the user can verify the deployment without leaving the deployment context. The id is normalized via `toLocalId` so the chat page receives the local id form the endpoint selector expects. - Hide the alert when the deployment has no revisions yet (`!hasNoRevision`); without a revision there is nothing to chat with, so the CTA would be misleading. - Extend the `DeploymentConfigurationSectionQuery` to fetch `metadata.status`. - Reuse `deployment.GoToDetailPage` in `Chat/EndpointSelect`'s tooltip instead of the orphan `general.NavigateToDetailPage` key. - Align breadcrumb labels in `routes.tsx` with the new Deployments naming (`webui.menu.Deployments` and `webui.menu.DeploymentDetail`) so the section header and breadcrumbs match. - Add new i18n keys `deployment.DeploymentReady`, `deployment.StartChatTest`, `deployment.GoToDetailPage` and `webui.menu.DeploymentDetail` in English/Korean and translate them into all 19 other locales. The earlier `deployment.StartChat` key is removed. ## Test plan - [ ] Open a deployment whose status is `READY` **and** has at least one revision; verify the green success alert appears at the top with a **Test in Chat** button. - [ ] Open a `READY` deployment that has **no revisions**; verify the alert is suppressed. - [ ] Click **Test in Chat** and confirm navigation to `/chat?endpointId=<localDeploymentId>`, and that the chat page resolves the endpoint correctly. - [ ] Verify the alert disappears for non-`READY` statuses (e.g. `DEPLOYING`, `STOPPED`). - [ ] On the chat page's endpoint selector, hover the info icon and confirm the tooltip reads "View Deployment Details" / "배포 자세히 보기". - [ ] Verify the deployment detail page breadcrumb reads "Deployments / Detail" (and the localized variants) instead of the legacy "Serving / Routing Info". - [ ] Switch language to Korean (and one more locale) and confirm the alert title, button label, and breadcrumbs are translated. [FR-2830]: https://lablup.atlassian.net/browse/FR-2830?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
7b37db3 to
d75c348
Compare
There was a problem hiding this comment.
Pull request overview
Adds a deployment “READY” success alert (with a Chat shortcut) to the new deployment detail UI, aligns breadcrumbs/menu labels for the new /deployments routes, and updates i18n strings across all locales to support the new UI copy.
Changes:
- Show a success
AlertinDeploymentConfigurationSectionwhendeployment.metadata.status === 'READY', with a button that navigates to/chat?endpointId=<deploymentId>. - Update route
handle.labelKeyvalues for/deployments(and legacy/serving) to use deployments-specific menu labels. - Add new deployment-related i18n keys (including the deployment-ready strings) across all 21 locales and update Chat endpoint selector tooltip text.
Reviewed changes
Copilot reviewed 24 out of 24 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| resources/i18n/de.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (DE). |
| resources/i18n/el.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (EL). |
| resources/i18n/en.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (EN). |
| resources/i18n/es.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (ES). |
| resources/i18n/fi.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (FI). |
| resources/i18n/fr.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (FR). |
| resources/i18n/id.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (ID). |
| resources/i18n/it.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (IT). |
| resources/i18n/ja.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (JA). |
| resources/i18n/ko.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (KO). |
| resources/i18n/mn.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (MN). |
| resources/i18n/ms.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (MS). |
| resources/i18n/pl.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (PL). |
| resources/i18n/pt-BR.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (PT-BR). |
| resources/i18n/pt.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (PT). |
| resources/i18n/ru.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (RU). |
| resources/i18n/th.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (TH). |
| resources/i18n/tr.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (TR). |
| resources/i18n/vi.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (VI). |
| resources/i18n/zh-CN.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (ZH-CN). |
| resources/i18n/zh-TW.json | Adds deployment-ready + chat CTA strings and webui.menu.DeploymentDetail translation (ZH-TW). |
| react/src/components/Chat/EndpointSelect.tsx | Updates tooltip i18n key for the “navigate to details” info button. |
| react/src/components/DeploymentConfigurationSection.tsx | Fetches metadata.status, computes READY state, and renders the success alert + chat navigation action. |
| react/src/routes.tsx | Updates route breadcrumb/menu label keys for /deployments and legacy /serving. |
…locked Resolves Copilot review feedback on PR #7281: - Hide the 'Test in Chat' button on the deployment-ready alert when the webserver config blockList includes 'chat', mirroring the gating already applied on EndpointDetailPage. The alert title still surfaces so operators know the deployment is ready, but routing users to a disabled feature is avoided. - Drop the unused 'deployment.DeploymentReadyDescription' i18n key from all 22 locales. The alert now renders title + (conditional) CTA only by design, so the description string was orphaned.
…oyment detail (#7281) Resolves #7280 ([FR-2830](https://lablup.atlassian.net/browse/FR-2830)) ## Summary - Add a `success` Alert at the top of the deployment configuration section that appears when `deployment.metadata.status === 'READY'`, mirroring the existing "Service is ready" affordance on the legacy endpoint detail page. - The alert exposes a primary **Test in Chat** button that navigates to `/chat?endpointId=<deploymentId>` so the user can verify the deployment without leaving the deployment context. The id is normalized via `toLocalId` so the chat page receives the local id form the endpoint selector expects. - Hide the alert when the deployment has no revisions yet (`!hasNoRevision`); without a revision there is nothing to chat with, so the CTA would be misleading. - Extend the `DeploymentConfigurationSectionQuery` to fetch `metadata.status`. - Reuse `deployment.GoToDetailPage` in `Chat/EndpointSelect`'s tooltip instead of the orphan `general.NavigateToDetailPage` key. - Align breadcrumb labels in `routes.tsx` with the new Deployments naming (`webui.menu.Deployments` and `webui.menu.DeploymentDetail`) so the section header and breadcrumbs match. - Add new i18n keys `deployment.DeploymentReady`, `deployment.StartChatTest`, `deployment.GoToDetailPage` and `webui.menu.DeploymentDetail` in English/Korean and translate them into all 19 other locales. The earlier `deployment.StartChat` key is removed. ## Test plan - [ ] Open a deployment whose status is `READY` **and** has at least one revision; verify the green success alert appears at the top with a **Test in Chat** button. - [ ] Open a `READY` deployment that has **no revisions**; verify the alert is suppressed. - [ ] Click **Test in Chat** and confirm navigation to `/chat?endpointId=<localDeploymentId>`, and that the chat page resolves the endpoint correctly. - [ ] Verify the alert disappears for non-`READY` statuses (e.g. `DEPLOYING`, `STOPPED`). - [ ] On the chat page's endpoint selector, hover the info icon and confirm the tooltip reads "View Deployment Details" / "배포 자세히 보기". - [ ] Verify the deployment detail page breadcrumb reads "Deployments / Detail" (and the localized variants) instead of the legacy "Serving / Routing Info". - [ ] Switch language to Korean (and one more locale) and confirm the alert title, button label, and breadcrumbs are translated. [FR-2830]: https://lablup.atlassian.net/browse/FR-2830?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
1969144 to
6507cd9
Compare

Resolves #7280 (FR-2830)
Summary
successAlert at the top of the deployment configuration section that appears whendeployment.metadata.status === 'READY', mirroring the existing "Service is ready" affordance on the legacy endpoint detail page./chat?endpointId=<deploymentId>so the user can verify the deployment without leaving the deployment context. The id is normalized viatoLocalIdso the chat page receives the local id form the endpoint selector expects.!hasNoRevision); without a revision there is nothing to chat with, so the CTA would be misleading.DeploymentConfigurationSectionQueryto fetchmetadata.status.deployment.GoToDetailPageinChat/EndpointSelect's tooltip instead of the orphangeneral.NavigateToDetailPagekey.routes.tsxwith the new Deployments naming (webui.menu.Deploymentsandwebui.menu.DeploymentDetail) so the section header and breadcrumbs match.deployment.DeploymentReady,deployment.StartChatTest,deployment.GoToDetailPageandwebui.menu.DeploymentDetailin English/Korean and translate them into all 19 other locales. The earlierdeployment.StartChatkey is removed.Test plan
READYand has at least one revision; verify the green success alert appears at the top with a Test in Chat button.READYdeployment that has no revisions; verify the alert is suppressed./chat?endpointId=<localDeploymentId>, and that the chat page resolves the endpoint correctly.READYstatuses (e.g.DEPLOYING,STOPPED).