From 9caecd7d72155f58c38bb362c5765a6f19f76c36 Mon Sep 17 00:00:00 2001 From: Brian Love Date: Tue, 12 May 2026 21:02:53 -0700 Subject: [PATCH] =?UTF-8?q?docs(examples-chat):=20smoke=20checklist=20refr?= =?UTF-8?q?esh=20=E2=80=94=20color=20scheme,=20collapsed=20sidenav,=20pin?= =?UTF-8?q?=20reorder,=20tool=20call=20minimal?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Covers recent demo polish that landed after the last refresh: - New `Color scheme (Light / Dark)` section (palette toggle, persistence, A2UI theme sync rules, FOUC guard) - New `Sidenav collapsed mode` section (chevron/Cmd+B, ~56px width, vertical icon stack, initial avatars, right-click context menu) - Per-row thread actions: pinned-row grip handle, Move up / Move down, `metadata.pinnedOrder` persistence - Sidenav topbar refactor (icon-only Create + chevron, search row below, `position: fixed` at >= 1024px) - Tool calls: muted name + status pill, host margin-bottom for breathing room - Inline checkpoint markers: action pill anchors adjacent to the dot (regression guard) --- examples/chat/smoke/CHECKLIST.md | 41 ++++++++++++++++++++++++++++++-- 1 file changed, 39 insertions(+), 2 deletions(-) diff --git a/examples/chat/smoke/CHECKLIST.md b/examples/chat/smoke/CHECKLIST.md index 24cd0e10..7a1190fa 100644 --- a/examples/chat/smoke/CHECKLIST.md +++ b/examples/chat/smoke/CHECKLIST.md @@ -136,6 +136,20 @@ renders correctly both during streaming and after completion. - [ ] Palette never overlaps the chat input - [ ] Palette stays above any popup/sidebar in z-order +## Color scheme (Light / Dark) + +- [ ] Palette → APPEARANCE section shows a `Light` / `Dark` segmented control above the existing `Theme` dropdown +- [ ] Default is `Dark` on first load +- [ ] Toggle to `Light` — `` flips to `data-color-scheme="light"` and `data-ngaf-chat-theme="light"` +- [ ] Page background flips to white; chat composition + sidenav backgrounds flip to light +- [ ] A2UI surface text colors invert correctly (no white-on-white or black-on-black) +- [ ] Toggle back to `Dark` — all of the above restore +- [ ] When A2UI theme dropdown is on `default-dark` or `default-light`, it auto-syncs with the color scheme toggle +- [ ] When A2UI theme is on a `material-*` preset, color scheme toggle does NOT change the A2UI theme (user override wins) +- [ ] Selection persists across reload (`localStorage.ngaf-chat-demo:palette.colorScheme`) +- [ ] No FOUC on initial load — inline `` script reads the persisted value before bootstrap +- [ ] No `console.error` on toggle + ## Keyboard & accessibility - [ ] Tab order reaches: input, send button, suggestions (when shown), @@ -219,6 +233,9 @@ renders correctly both during streaming and after completion. - [ ] After tool completes: card collapses to "complete" pill - [ ] Click the card — args + result panels expand - [ ] AI response references documents inline (e.g. "Signals are... [1]") +- [ ] Tool call card name (`.tcc__name`) is rendered in `--ngaf-chat-text-muted` color and `font-size-sm` (NOT full-brightness text) +- [ ] Tool call status pill (`.tcc__pill`) uses muted monochrome (`--ngaf-chat-text-muted`) regardless of status — NO saturated green/red for complete/error states +- [ ] `` host has `margin-bottom >= 16px` so the next sibling (A2UI surface or markdown) has clear breathing room ## Interrupts / human-in-the-loop @@ -328,9 +345,11 @@ Components NOT yet exercised by the demo (deferred to future media-focused sugge ## Sidenav (thread management) - [ ] Left sidenav renders by default as a semantic `