Skip to content

PR-SETTINGS-PAGE-SUBTITLE-0: per-page subtitle (round 4/15) - #147

Merged
jackwener merged 1 commit into
mainfrom
pr/settings-page-subtitle
Jun 23, 2026
Merged

PR-SETTINGS-PAGE-SUBTITLE-0: per-page subtitle (round 4/15)#147
jackwener merged 1 commit into
mainfrom
pr/settings-page-subtitle

Conversation

@jackwener

Copy link
Copy Markdown
Member

Round 4/15. Reference Settings carries a one-line meta description below each page title; maka had only the bare label. Added optional description field on SETTINGS_NAV, filled for every section, rendered below h2 with subtle 13px muted typography.

Reference Settings carries a one-line meta description below each
page title — helps the user understand "where am I?" at the top of
the pane. Maka had only the bare label.

Added an optional `description` field to `SettingsNavItem` and filled
it in for every visible section. Rendered as `<p>` inside a
`.settingsPageHeaderTitleStack` div below the existing h2.

CSS:
- `.settingsPageHeaderTitleStack` grid + 4px gap so h2 and subtitle
  share the same edge math
- `.settingsPageHeaderDescription` 13px / lh 1.45 / muted color
- h2 styling unchanged

1466 / 1466 tests pass.
@jackwener
jackwener merged commit 61dec4d into main Jun 23, 2026
@Astro-Han
Astro-Han deleted the pr/settings-page-subtitle branch July 14, 2026 05:05
jackwener added a commit that referenced this pull request Aug 4, 2026
Third pass of the UX audit, on 健康, 记忆 and 子 Agent.

健康 · every signal row carried 「来源:能力快照 · 读取:1秒钟前」 under a
header that already says 最近一次读取. The spec asked whether any row
genuinely differs before cutting, so it was measured rather than assumed:
across 14 signals every `checkedAt` equalled the snapshot's exactly, delta 0.
The per-row timestamp was one fact printed fourteen more times, and it goes.

Source turned out not to be the same story, which is why the check was worth
running. Twelve rows read from the capability snapshot, but one is a live
connection test and one a runtime probe — "this was actually exercised" is
worth saying. It now shows only where it is not the page's default reading:
the two informative rows keep it, the twelve repetitions stop.

The header named the internal layer taxonomy (配置 · 验证 · 权限 · 功能 ·
操作审批 · 记忆 · 运行态 · 存储) and then drew 「验证通过 ≠ 运行可用」 in bold.
Both describe how the health model is built. The layers remain as the page's
own subheadings, where they group rather than schematize.

记忆 · prompt and 注入 are the model's vocabulary. "开启后才允许发送消息时把
本地记忆加入 prompt" becomes "开启后,发送消息时会把本地记忆一并提供给模型",
and the rest of the page follows: 进入 prompt → 提供给模型, 会注入 → 会提供.
Same guarantees, said in terms of what happens to the user's data.

子 Agent · 「共 0 / 64 个配置」 loses the ceiling. Nobody can raise it and
nobody acts on it; MAX_SUBAGENT_PRESETS still gates creation and the disabled
新建 button still says so at the point it matters.

Verified: build, typecheck, format:check, check-dead-css, test:checks, and
the desktop + ui workspace suites, with captures of all three pages from the
real app. storage and cli remain the known Node v25 node:sqlite failures;
runtime-host failed once under the parallel runner and passed standalone
(tracked in task #147).
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