mirror of
https://github.com/MoonshotAI/kimi-code.git
synced 2026-08-28 11:41:38 +00:00
* feat(chat): restyle dock work pills and redesign work panels * fix(chat): signal non-openable task rows and subagent cards with a not-allowed cursor * refactor(chat): extract dock work pills and panel heads into chat/dock WorkPanelHead unifies the four work panel heads: a primary title plus a muted meta joined by a gap (no middot), with the 44px touch rules and the narrow-width wrap alongside. WorkPill holds the repeated workbar pill structure (icon + label + optional meta). TasksPane, SubagentGrid, GoalPanel, and TodoCard move into chat/dock; ChatDock keeps orchestration. * fix(chat): token the remaining hardcoded spacing in the dock work panels * docs(design-system): add a Dock section for work pills and panels Consolidates the scattered dock decisions into one subsection under Chat Interface: the pill vocabulary, panel shell and motion, the two-tone head, per-kind bodies, filtering and sizing, and the open/cancel model — with two live mockups and a state-vocabulary table. The composer callout and the glassmorphism exemption now point here. * fix(chat): replay the panel pop motion when switching work pills The panel shell is keyed by panel kind, so a pill switch exits the old panel and pops the new one from the newly clicked pill instead of hard-swapping the content in place. * fix(chat): frost the work pills with the shared menu backdrop blur * fix(chat): match the work panel head icon to the pill's 1.5em glyph * feat(chat): report each work surface's live status in the pill meta The bash and sub-agent pills replace the all-time task count with a pulsing dot + running count shown only while work runs; the todos pill shows the done/total fraction in muted ink. The design-system Dock section documents the rule. * fix(chat): add a 2px trailing optical compensation to work pill padding * fix(chat): make the dock work panel non-selectable chrome * fix(chat): auto-space numerals and CJK in the work panel's state and time labels * fix(chat): close only the topmost layer when Escape is pressed * docs(changeset): rewrite the dock panel changesets as user-facing results * fix(chat): reset the detail panel's copied state when switching tasks * docs: move the dock open-layer exception to the root AGENTS.md * fix(swarm): show user-cancelled members as cancelled, not failed * fix(chat): use the caption leading token for todo row text * fix(chat): flatten persisted tool output before extracting background task ids * fix(chat): show the bound model and thinking effort on subagent cards * fix(chat): rework the subagent card layout The muted session number leads the title instead of floating at the row's end; the bound model and thinking effort get their own icon-led line above the status row; state and duration read as icon + label; the prompt meta drops to caption size. * fix(chat): rebalance subagent card type scale and unify state glyph sizes * feat(chat): rename the task filter chips and add a done filter 活跃 becomes 最近 (recent), and a 已完成 (done: every terminal state) chip joins between 进行中 and 全部 — each chip now leads with an icon. * fix(chat): use the play glyph for the running filter chip * feat(chat): collapse the panel filter into a dropdown and pills to icons when narrow The new FilterControl measures the panel head and swaps the SegmentedControl for a Select dropdown when the title plus chips would overflow; the head title never wraps (truncation is the last resort); below the composer's 620px container width the work pills render icon-only. * fix(chat): teleport the compact filter dropdown out of the work panel The Select menu rendered inside the panel, so the panel's overflow and backdrop-filter squeezed it into wrapping rows. The compact dropdown now teleports to body and anchors to the trigger; menu presses are consumed on window capture so they never dismiss the panel underneath, and Escape closes only the menu. * fix(chat): guarantee the panel head title by layout, not by clipping The overflow/ellipsis fallback clipped descenders at the tab's tight line-height (the 'g' in the head). The tab is nowrap and flex-none now — no truncation hack anywhere; the collapsed dropdown always leaves enough room. * fix(chat): stop the filter menu's outside-press on the mousedown event The dock's outside-press listener is on mousedown; the menu consumed pointerdown — a different event that never reaches it — so picking a filter also dismissed the work panel. * fix(swarm): map persisted aborted results to the neutral cancelled phase * fix(chat): recover each swarm member's own task text for the card description * fix(chat): use the circled check glyph for the done filter chip * fix(chat): scale the full-bleed circle-check onto the icon grid in the filter chips SegmentedControl items now expose data-icon so a glyph can be targeted. * fix(swarm): give cancelled members their own summary count and keep saved bodies expandable * fix(chat): match the panel empty state to the active filter * fix(chat): filter menu keyboard/a11y handling and accessible pill names * fix(chat): read swarm member task text by the zero-based swarmIndex * fix(chat): render the recovered command on bash task rows * fix(chat): never derive task durations from observed completion stamps * fix(chat): rebuild the compact filter on the Pill primitive and harden its menu lifecycle The trigger is the Pill primitive (no bespoke button chrome); closing via Escape or a selection returns focus to it; leaving compact mode closes the menu and its window listeners; flipping back to the segmented control remeasures it after the DOM updates. * fix(chat): carry the estimated completion marker through every merge path * fix(chat): drop the unbundled web copies of the new kimi icons * refactor(chat): share the IME composition latch via app-client * fix(chat): clamp the compact filter menu inside the viewport * fix(chat): mark projector-stamped completion times as estimated * fix(chat): clear the estimated completion marker once a real stamp arrives * fix(chat): close the compact filter menu on focus leave and when an overlay opens * fix(chat): share the todo status ring stroke via a design token * fix(chat): derive the pill-collapse breakpoint from the --p-bp-sm token * fix(chat): order the default task filter by recency, running first * fix(chat): token-derived menu spacing and menuitemradio semantics for the compact filter * fix(chat): keep subagent card numbers stable across late task arrivals * fix(chat): let the native terminal keep its Escape keys * fix(chat): carry subagent card numbers across the REST-to-agent rekey |
||
|---|---|---|
| .. | ||
| check-style.mjs | ||