From 382708b1c03908522ee95b8a74027772ce61e509 Mon Sep 17 00:00:00 2001 From: NI0317 Date: Sat, 18 Jul 2026 17:44:12 +0800 Subject: [PATCH] chore(ui): satisfy desktop package gates --- docs/config-catalog.md | 1 + packages/ui/desktop/README.md | 19 +++++-------------- packages/ui/desktop/src/i18n.ts | 2 ++ 3 files changed, 8 insertions(+), 14 deletions(-) diff --git a/docs/config-catalog.md b/docs/config-catalog.md index 91fe7c6497..2a227727d0 100644 --- a/docs/config-catalog.md +++ b/docs/config-catalog.md @@ -1281,6 +1281,7 @@ Imported as libraries by other packages; a `cordis.yml` cannot load them. - `@deepseek-ai/dsh-acp-snapshot` ([`packages/support/acp-snapshot/src/index.ts`](../packages/support/acp-snapshot/src/index.ts)) - `@deepseek-ai/dsh-app-boot` ([`packages/ui/app-boot/src/index.ts`](../packages/ui/app-boot/src/index.ts)) - `@deepseek-ai/dsh-brand` ([`packages/util/brand/src/index.ts`](../packages/util/brand/src/index.ts)) +- `@deepseek-ai/dsh-desktop` ([`packages/ui/desktop/src/index.ts`](../packages/ui/desktop/src/index.ts)) - `@deepseek-ai/dsh-helper` ([`packages/sdk/helper/src/index.ts`](../packages/sdk/helper/src/index.ts)) - `@deepseek-ai/dsh-hook-protocol` ([`packages/hooks/hook-protocol/src/index.ts`](../packages/hooks/hook-protocol/src/index.ts)) - `@deepseek-ai/dsh-jsonrpc-demo` ([`packages/examples/jsonrpc-demo/src/index.ts`](../packages/examples/jsonrpc-demo/src/index.ts)) diff --git a/packages/ui/desktop/README.md b/packages/ui/desktop/README.md index e808ee5416..bcd3bbcfc4 100644 --- a/packages/ui/desktop/README.md +++ b/packages/ui/desktop/README.md @@ -187,17 +187,8 @@ Start with a desktop package that defines shared UI contracts, then build the El ## Known Limitations and Deferred Work -- **Development build only** — this package ships a usable Electron/Vite app and - a real ACP subprocess bridge, but it is not yet packaged as a signed - distributable. -- **ACP is the first runtime channel** — direct in-process embedding could make - context queries and restarts richer, but would make isolation, teardown, and - hot reload harder. -- **Develop is read-first** — it exposes prompts, tools, plugins, config, - runtime state, and the change loop as a source browser; direct graphical - plugin/config editing is deferred. -- **Trace refresh is mixed live/persisted** — chat streams from ACP live updates, - while Trajectory and Waterfall currently read persisted JSONL after turns - complete. -- **Compare and replay remain skeletal** — the product contract is documented, - but semantic evaluation and dataset-level analysis belong to later work. +- **Development build only** — this package ships a usable Electron/Vite app and a real ACP subprocess bridge, but it is not yet packaged as a signed distributable. +- **ACP is the first runtime channel** — direct in-process embedding could make context queries and restarts richer, but would make isolation, teardown, and hot reload harder. +- **Develop is read-first** — it exposes prompts, tools, plugins, config, runtime state, and the change loop as a source browser; direct graphical plugin/config editing is deferred. +- **Trace refresh is mixed live/persisted** — chat streams from ACP live updates, while Trajectory and Waterfall currently read persisted JSONL after turns complete. +- **Compare and replay remain skeletal** — the product contract is documented, but semantic evaluation and dataset-level analysis belong to later work. diff --git a/packages/ui/desktop/src/i18n.ts b/packages/ui/desktop/src/i18n.ts index 3c11134a13..d0a06e2dbb 100644 --- a/packages/ui/desktop/src/i18n.ts +++ b/packages/ui/desktop/src/i18n.ts @@ -1,6 +1,7 @@ /** Renderer locales currently supported by the desktop shell. */ export type Locale = 'zh-CN' | 'en-US' +/* jscpd:ignore-start -- Locale dictionaries deliberately keep matching key order across languages. */ const messages = { 'zh-CN': { 'app.newChat': '新对话', @@ -253,6 +254,7 @@ const messages = { 'error.noDesktopApi': 'Desktop API is not available. Use the Electron window, not the browser tab.', }, } as const +/* jscpd:ignore-end */ /** Translation key shared by both renderer dictionaries. */ export type I18nKey = keyof typeof messages['en-US']