From 07a573f66030d7ed7739529f69e9b4dea022bef2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=86=B0=E6=9C=94?= <565183519@qq.com>
Date: Tue, 4 Aug 2026 21:13:00 +0800
Subject: [PATCH] fix: keep world login separate from router proof
---
.../src/components/HoloLakeHome.test.tsx | 10 ++++++++++
.../src/components/HoloLakeHome.tsx | 13 +------------
2 files changed, 11 insertions(+), 12 deletions(-)
diff --git a/product-source/hololake-platform/src/components/HoloLakeHome.test.tsx b/product-source/hololake-platform/src/components/HoloLakeHome.test.tsx
index 8bad2ec..18bb7cd 100644
--- a/product-source/hololake-platform/src/components/HoloLakeHome.test.tsx
+++ b/product-source/hololake-platform/src/components/HoloLakeHome.test.tsx
@@ -375,6 +375,16 @@ describe('HoloLakeHome', () => {
expect(screen.getAllByText('在线只读')).toHaveLength(4)
})
+ it('does not promote an authorized world login into a Fifth Domain router receipt', () => {
+ useGuanghuWorldLoginMock.mockReturnValue(worldLogin('online'))
+ useGuanghuRouterMock.mockReturnValue(offlineRouter())
+
+ render()
+
+ expect(screen.getByRole('button', { name: /第五域.*等待真实回执/ })).toBeInTheDocument()
+ expect(screen.queryByRole('button', { name: /第五域.*当前所在/ })).not.toBeInTheDocument()
+ })
+
it('opens the origin channel directly from the zero-point core', () => {
render()
diff --git a/product-source/hololake-platform/src/components/HoloLakeHome.tsx b/product-source/hololake-platform/src/components/HoloLakeHome.tsx
index faab65c..8acc274 100644
--- a/product-source/hololake-platform/src/components/HoloLakeHome.tsx
+++ b/product-source/hololake-platform/src/components/HoloLakeHome.tsx
@@ -117,18 +117,7 @@ export function HoloLakeHome({
const worldOpen = login.state.phase === 'online'
const isVisualPreview = login.state.workorderId === 'local-visual-preview'
const fifthDomainOpen = worldOpen && route !== 'world'
- const worldRouterState = worldOpen && router.state.status !== 'online'
- ? {
- ...router.state,
- latestReceipt: {
- connection_id: login.state.workorderId ?? 'email-authorized-session',
- node_id: login.state.nodeId,
- receipt_id: login.state.workorderId ?? 'email-authorized-session',
- state: 'online',
- },
- status: 'online' as const,
- }
- : router.state
+ const worldRouterState = router.state
const t = (key: TranslationKey) => translate(locale, key)
const executeLivingPlan = useCallback((