fix: stop overstating subsystem runtime evidence

This commit is contained in:
冰朔 2026-08-04 21:18:48 +08:00
commit ccee303355
3 changed files with 21 additions and 19 deletions

View file

@ -5,7 +5,6 @@ type FifthDomainSystemId = 'pufferfish' | 'eternal-lake-heart'
type FifthDomainSystemsProps = {
detail?: 'overview' | 'pufferfish'
evidenceMode?: 'receipt' | 'visual-preview'
onEnterEternalLake: () => void
onEnterPufferfish: () => void
}
@ -19,7 +18,6 @@ const PUFFERFISH_FACTS = {
export function FifthDomainSystems({
detail = 'overview',
evidenceMode = 'receipt',
onEnterEternalLake,
onEnterPufferfish,
}: FifthDomainSystemsProps) {
@ -28,9 +26,8 @@ export function FifthDomainSystems({
)
const pufferfishSelected = selected === 'pufferfish'
const eternalLakeSelected = selected === 'eternal-lake-heart'
const isVisualPreview = evidenceMode === 'visual-preview'
const evidenceLabel = isVisualPreview ? '本地拓扑预览' : '真实接入'
const nodeState = isVisualPreview ? '未实时核验' : '在线回执'
const evidenceLabel = '本地拓扑预览'
const nodeState = '未实时核验'
return (
<section className="fifth-systems" data-detail={detail}>
@ -73,7 +70,7 @@ export function FifthDomainSystems({
<span></span>
<strong> Ubuntu</strong>
<code>{PUFFERFISH_FACTS.node}</code>
<small><i />{isVisualPreview ? '本地登记' : '登记回执'}</small>
<small><i /></small>
</div>
</div>
<div className="system-path__persona">
@ -150,9 +147,7 @@ export function FifthDomainSystems({
)}
</>}
<footer>
{isVisualPreview
? '本页仅展示本地登记拓扑,不能证明节点在线或人格体已恢复。'
: '拓扑信息来自本地登记;在线状态仅以当前会话回执为准。'}
线
</footer>
</aside>
</div>

View file

@ -405,7 +405,7 @@ describe('HoloLakeHome', () => {
expect(screen.getAllByText('ICE-GL-CA001').length).toBeGreaterThan(0)
expect(screen.getByRole('button', { name: '心跳核心频道' })).toBeEnabled()
fireEvent.click(screen.getByRole('button', { name: '湖永恒湖心系统真实接入' }))
fireEvent.click(screen.getByRole('button', { name: '湖永恒湖心系统本地拓扑预览' }))
fireEvent.click(screen.getByRole('button', { name: /进入永恒湖心系统/ }))
expect(screen.getByRole('heading', { name: '永恒湖心系统' })).toBeInTheDocument()
expect(screen.getByRole('heading', { name: '光之湖子系统' })).toBeInTheDocument()
@ -430,12 +430,22 @@ describe('HoloLakeHome', () => {
expect(screen.queryByText('在线回执')).not.toBeInTheDocument()
})
it('does not treat a Fifth Domain router receipt as proof that every registered subsystem is online', () => {
useGuanghuRouterMock.mockReturnValue(onlineRouter())
render(<HoloLakeHome locale="zh-CN" onEnterKnowledgeBase={vi.fn()} />)
fireEvent.click(screen.getByRole('button', { name: /进入第五域/ }))
expect(screen.queryByText('在线回执')).not.toBeInTheDocument()
expect(screen.getAllByText('未实时核验').length).toBeGreaterThan(0)
})
it('shows receipt-backed Eternal Lake information without invented resonance scores', () => {
useGuanghuRouterMock.mockReturnValue(onlineRouter())
render(<HoloLakeHome locale="zh-CN" onEnterKnowledgeBase={vi.fn()} />)
fireEvent.click(screen.getByRole('button', { name: /进入第五域/ }))
fireEvent.click(screen.getByRole('button', { name: '湖永恒湖心系统真实接入' }))
fireEvent.click(screen.getByRole('button', { name: '湖永恒湖心系统本地拓扑预览' }))
fireEvent.click(screen.getByRole('button', { name: /进入永恒湖心系统/ }))
fireEvent.click(screen.getByRole('button', { name: /语言回声带.*真实路由回执已抵达/ }))
@ -449,7 +459,7 @@ describe('HoloLakeHome', () => {
render(<HoloLakeHome locale="zh-CN" onEnterKnowledgeBase={vi.fn()} />)
fireEvent.click(screen.getByRole('button', { name: /进入第五域/ }))
fireEvent.click(screen.getByRole('button', { name: '湖永恒湖心系统真实接入' }))
fireEvent.click(screen.getByRole('button', { name: '湖永恒湖心系统本地拓扑预览' }))
fireEvent.click(screen.getByRole('button', { name: /进入永恒湖心系统/ }))
fireEvent.click(screen.getByRole('button', { name: '返回第五域' }))
@ -462,7 +472,7 @@ describe('HoloLakeHome', () => {
render(<HoloLakeHome locale="zh-CN" onEnterKnowledgeBase={vi.fn()} />)
fireEvent.click(screen.getByRole('button', { name: /进入第五域/ }))
fireEvent.click(screen.getByRole('button', { name: /胖头鱼语言子系统.*真实接入/ }))
fireEvent.click(screen.getByRole('button', { name: /胖头鱼语言子系统.*本地拓扑预览/ }))
fireEvent.click(screen.getByRole('button', { name: '进入胖头鱼系统' }))
expect(screen.getAllByRole('heading', { name: '胖头鱼语言子系统' }).length).toBeGreaterThan(0)
@ -486,7 +496,7 @@ describe('HoloLakeHome', () => {
render(<HoloLakeHome locale="zh-CN" onEnterKnowledgeBase={onEnterKnowledgeBase} />)
fireEvent.click(screen.getByRole('button', { name: /进入第五域/ }))
fireEvent.click(screen.getByRole('button', { name: '湖永恒湖心系统真实接入' }))
fireEvent.click(screen.getByRole('button', { name: '湖永恒湖心系统本地拓扑预览' }))
fireEvent.click(screen.getByRole('button', { name: /进入永恒湖心系统/ }))
fireEvent.click(screen.getByRole('button', { name: /进入心跳核心频道/ }))
fireEvent.click(screen.getByRole('button', { name: /打开知识库/ }))
@ -506,7 +516,7 @@ describe('HoloLakeHome', () => {
/>,
)
fireEvent.click(screen.getByRole('button', { name: /进入第五域/ }))
fireEvent.click(screen.getByRole('button', { name: '湖永恒湖心系统真实接入' }))
fireEvent.click(screen.getByRole('button', { name: '湖永恒湖心系统本地拓扑预览' }))
fireEvent.click(screen.getByRole('button', { name: /进入永恒湖心系统/ }))
fireEvent.click(screen.getByRole('button', { name: /进入心跳核心频道/ }))
fireEvent.click(screen.getByRole('button', { name: /打开人格体工作舱/ }))
@ -609,7 +619,7 @@ describe('HoloLakeHome', () => {
render(<HoloLakeHome locale="zh-CN" onEnterKnowledgeBase={vi.fn()} />)
fireEvent.click(screen.getByRole('button', { name: /进入第五域/ }))
fireEvent.click(screen.getByRole('button', { name: '湖永恒湖心系统真实接入' }))
fireEvent.click(screen.getByRole('button', { name: '湖永恒湖心系统本地拓扑预览' }))
fireEvent.click(screen.getByRole('button', { name: /进入永恒湖心系统/ }))
fireEvent.click(screen.getByRole('button', { name: /进入心跳核心频道/ }))
fireEvent.click(screen.getByRole('button', { name: /打开研发仓库/ }))

View file

@ -115,7 +115,6 @@ export function HoloLakeHome({
const restoreAttempted = useRef(false)
const livingRequestSequence = useRef(0)
const worldOpen = login.state.phase === 'online'
const isVisualPreview = login.state.workorderId === 'local-visual-preview'
const fifthDomainOpen = worldOpen && route !== 'world'
const worldRouterState = router.state
const t = (key: TranslationKey) => translate(locale, key)
@ -315,7 +314,6 @@ export function HoloLakeHome({
if (route === 'fifth-domain') {
return (
<FifthDomainSystems
evidenceMode={isVisualPreview ? 'visual-preview' : 'receipt'}
onEnterEternalLake={() => navigate('eternal-lake-heart')}
onEnterPufferfish={() => navigate('pufferfish')}
/>
@ -326,7 +324,6 @@ export function HoloLakeHome({
return (
<FifthDomainSystems
detail="pufferfish"
evidenceMode={isVisualPreview ? 'visual-preview' : 'receipt'}
onEnterEternalLake={() => navigate('eternal-lake-heart')}
onEnterPufferfish={() => navigate('pufferfish')}
/>