Skip to content

fix(lark): compact empty-state help and restore progressive coverage - #7289

Merged
loopx-agent merged 1 commit into
mainfrom
codex/lark-installed-readback-20261025
Oct 24, 2026
Merged

loopx-agent merged 1 commit into
mainfrom
codex/lark-installed-readback-20261025

Conversation

@loopx-agent

Copy link
Copy Markdown
Collaborator

When Lark has no app profiles or matching Goal connections, its optional help still inherited the old 130px empty-card layout. A one-line explanation became a large centered panel. Both callers now use the shared ContextHelp paragraph layout; the unused empty-card selector is removed.

The existing progressive-loading scenario also waited for that hidden paragraph to become visible. It now opens the accessible help with keyboard focus and narrow-screen tap, checks compact sizing for both helpers, and retains catalog/probe counts, unknown-versus-zero, late-result cancellation and failed-read recovery checks. The independent health-loading behavior introduced in #6879 is reused.

Validation: production Chat build/typecheck, JavaScript syntax, CSS token checks, and the complete packaged progressive-loading scenario (9.09s). Its new sizing assertion fails against the original product CSS. The current Lark HTTP/provider suites also pass (119 tests); provider failures use synthetic IO. Source text passed the public-boundary scan; the four images below use synthetic data and were inspected for content and metadata. Required premerge and exact-head review results follow separately.

Visual evidence

Tested product tree: f61d48981 (same source inputs as the build). Packaged Chat in Chromium, desktop 1512×982 and narrow 390×844; synthetic settings data. These captures do not claim an installed release or live-provider failure test.

Expanded empty help before Expanded empty help after
Before: oversized empty-help paragraph After: content-sized optional help

The default view keeps its count and help icon. Expanded help now reads directly beneath its heading. Ready, pending and unavailable verification remain separate, and refresh remains available:

Desktop mixed verification states

Narrow empty connection help

The connection view still contains the existing longer private-conversation setup instructions above the empty collection. This PR fixes the two empty-help callers; it does not qualify a redesign of that setup form. App configuration, permission checks, health workers and mutation behavior are unchanged.

Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: model_agent; gpt-6.1-sol; OpenAI; runtime_reported; reasoning_effort=max (host-recorded Turn; active_turn_verified=false).

Approval conclusion (author-owned PR; GitHub blocks formal self-approval)

动机

使用设置中 Lark 页的用户,在空应用档案或空连接列表中查看可选帮助。 原来一行说明继承 130px 空卡片高度,展开后出现大片居中留白;现在同一说明紧随标题排版,图标入口和关闭方式保持。 打包页面已验证两个空态帮助可通过聚焦和点击读取,窄屏展开紧凑,未知、失败与确认零项仍能区分。 本次不重写健康检查、配置和权限规则,也不把整个连接设置表单或已安装版本认定为完成改版。 连接页上方较长的私聊设置说明仍属于现有前端整理范围,本次只完成两个空态帮助及其既有回归路径。

改动思路

展示问题由两个调用者错误沿用空卡片类造成;移除该类即可复用 ContextHelp 的字号、间距和交互,无需增加全局覆盖或状态。 本 PR 交付空应用档案和空连接帮助的紧凑排版,以及同一 progressive-loading 场景的可访问回归;不扩展后端协议。 不改动会保留真实视觉缺陷;只把旧测试改到能通过也不够,第一次修正后的测试确实通过,但截图中的短句仍被大块留白包围。此次进一步移除调用者旧类和孤立选择器,由共享帮助组件继续负责聚焦、点击及 Escape。目录加载、独立健康检查和刷新取消沿用现有所有者,未新增缓存、覆盖规则或状态。普通用户没有增加必须回答的交互轮次,帮助阅读仍为自愿操作。

具体改动

规范基准为 docs/development/design.md,固定版本 8a718ca。按 earn-the-users-attention 核对空摘要随内容尺寸,explanations-on-demand 核对完整说明经共享图标按需读取,populated-page-review 核对桌面混合状态、窄屏展开和连接页下部。三项均在本次两个帮助调用者范围内实现;不把它们推演为整份设置表单重构验收。

关键代码讲解

  1. apps/presentation/dashboard/src/features/personal-workspace/lark-settings-page.tsx:573 的空应用分支保留加载、错误和空集条件,只去掉段落旧类。加载或失败时仍没有确认空集图标;打开帮助也不会发起新的核验或修改配置。
  2. 同文件612行的空连接分支采用相同段落;apps/presentation/dashboard/src/features/personal-workspace/personal-workspace.css:801 只移除已经失去调用者的空态选择器,加载区域原有布局保留。全仓调用者搜索没有发现需要兼容该类的独立消费者。
  3. examples/personal-workspace-browser/progressive-loading.mjs 的 verifyLarkLoading 沿用已有场景:先读取配置,再观察快、慢和失败档案,刷新后拒绝旧代结果。确认零项后改为聚焦图标、Escape关闭、390px点击展开,并核对两个帮助都没有空卡片最小高度;随后继续验证失败读取与原位恢复。没有新增重复测试入口、生产抽象或权限状态。

对主干的风险

主要风险是为了简洁而误把未知变成零、隐藏失败,或者只检查可访问名称却忽略实际展开排版。原始样式反例在真实打包页面上以 Optional help inherited full empty-state spacing 退出1;修复后完整场景9.09秒通过。API响应为合成数据,真实执行的是编译后的页面、共享帮助组件和浏览器交互。119项现有HTTP/提供方测试通过,提供方IO为替身;生产构建与TypeScript检查、JS语法及31份CSS样式表检查通过。

标准premerge的4个直接检查和8个选择检查全部通过,仍以退出1保留四张PNG的人工检查项;逐张查看像素和元数据后未见私有内容,未把机器结果改写成自动全绿。单独共享registry检查还报告两条与本次差异无关的既有Goal权威存储问题,其源码公开边界扫描已完成且干净。CQR通过;按当前Goal策略不查询或等待CI。无新增默认开关、写入权限、协议版本或持久状态,回滚不需要迁移。

我的整体评价

本次为 justified_increment:完成了可独立使用、测试和回滚的两个帮助调用者修复,较大的设置说明整理仍留在现有前端工作中。long_horizon 为 preserved:晚到读取、失败后的重试及后续覆盖均保留;user_experience 在该范围为 improved。桌面混合核验卡片的读数、未知状态与刷新入口清楚;390px 展开空态后说明直接接在标题下,消除了原来的居中留白,完整说明仍在同一图标内可读。 未验证本次提交的原生 WebView 安装,也未做真实账号故障注入;连接表单上方既有长说明的整体重排不在本 PR 验收结论内。

实际检查包含连接页上方仍较长的私聊设置说明,因此结论仅针对这两个帮助段落,未用折叠、缺失内容或单一安静截图冒充全页完成。无需额外兼容层或全局样式覆盖。对固定head f61d489 无阻塞发现,支持在既有授权与独立merge-readiness满足后合并。

English verdict: APPROVE — f61d489. Two existing Lark empty-help callers now use content-sized shared disclosure styling; the complete packaged progressive/recovery scenario and the original-style counterfactual establish the bounded fix. Build, focused owner suites, CSS checks and standard local premerge checks pass; raster holds were manually inspected. Live-provider failures, native installation of this head and the larger setup-form redesign remain unqualified.

@loopx-agent
loopx-agent merged commit adaa466 into main Oct 24, 2026
25 of 31 checks passed
@loopx-agent
loopx-agent deleted the codex/lark-installed-readback-20261025 branch October 24, 2026 21:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant