feat(desktop): default Kimi to fast mode and show release notes on update

- kimi adapter: parameterize mode switching (fast/thinking) and default to
  K2.6 快速; fix snapshot filtering so fast-mode "搜索网页" chips no longer
  wipe the answer body or get misclassified as reasoning/sidebar
- desktop shell: display release notes in the client update modal
- admin-web: fix publish-records table layout with fixed columns and ellipsis
- bump desktop-client to 0.1.10

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-10 01:35:08 +08:00
parent 347cea1296
commit 5463319b40
4 changed files with 143 additions and 38 deletions
@@ -99,30 +99,31 @@ const publishRecordColumns = computed<TableColumnsType<PublishRecord>>(() => [
title: t('media.records.platform'),
dataIndex: 'platform_name',
key: 'platform_name',
width: 140,
width: 128,
},
{
title: t('media.records.status'),
dataIndex: 'status',
key: 'status',
width: 130,
width: 112,
},
{
title: t('media.records.publishedAt'),
dataIndex: 'published_at',
key: 'published_at',
width: 168,
width: 126,
},
{
title: '错误信息',
dataIndex: 'error_message',
key: 'error_message',
width: 220,
width: 190,
},
{
title: t('media.records.link'),
dataIndex: 'external_article_url',
key: 'external_article_url',
width: 244,
},
])
@@ -288,7 +289,7 @@ async function copyPublishLink(record: PublishRecord): Promise<void> {
<template>
<a-drawer
:open="open"
width="840"
width="min(100vw, 960px)"
:title="t('article.drawerTitle')"
class="article-drawer"
@close="handleClose"
@@ -401,12 +402,15 @@ async function copyPublishLink(record: PublishRecord): Promise<void> {
<a-tab-pane key="published" :tab="t('media.records.tabTitle')">
<a-table
class="article-drawer__published-table"
:columns="publishRecordColumns"
:data-source="publishRecordsQuery.data.value || []"
:loading="publishRecordsQuery.isPending.value"
:pagination="false"
row-key="id"
size="small"
table-layout="fixed"
:scroll="{ x: 800 }"
>
<template #emptyText>{{ t('media.records.empty') }}</template>
<template #bodyCell="{ column, record }">
@@ -439,6 +443,7 @@ async function copyPublishLink(record: PublishRecord): Promise<void> {
:href="resolvePublishLink(record)"
target="_blank"
rel="noreferrer"
:title="resolvePublishLink(record)"
>
{{ resolvePublishLink(record) }}
</a>
@@ -585,10 +590,18 @@ async function copyPublishLink(record: PublishRecord): Promise<void> {
.article-drawer__record-platform {
display: flex;
min-width: 0;
flex-direction: column;
gap: 4px;
}
.article-drawer__record-platform strong,
.article-drawer__record-platform span {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.article-drawer__record-platform span,
.article-drawer__record-empty {
color: var(--muted);
@@ -613,6 +626,7 @@ async function copyPublishLink(record: PublishRecord): Promise<void> {
}
.article-drawer__record-link {
display: block;
flex: 1;
min-width: 0;
overflow: hidden;
@@ -626,6 +640,8 @@ async function copyPublishLink(record: PublishRecord): Promise<void> {
align-items: center;
gap: 6px;
min-width: 0;
width: 100%;
max-width: 100%;
}
.article-drawer__record-copy.ant-btn {
@@ -638,6 +654,27 @@ async function copyPublishLink(record: PublishRecord): Promise<void> {
background: #e6f4ff;
}
.article-drawer__published-table {
width: 100%;
}
.article-drawer__published-table :deep(.ant-table) {
width: 100%;
}
.article-drawer__published-table :deep(.ant-table table) {
table-layout: fixed;
}
.article-drawer__published-table :deep(.ant-table-thead > tr > th) {
overflow: hidden;
white-space: nowrap;
}
.article-drawer__published-table :deep(.ant-table-cell) {
min-width: 0;
}
@media (max-width: 960px) {
.article-drawer__hero {
flex-direction: column;