Skip to content

refactor(web): thread composer and tool trail folders - #382

Merged
kinqsradio merged 9 commits into
mainfrom
refactor/thread-composer-trail
Nov 9, 2026
Merged

kinqsradio merged 9 commits into
mainfrom
refactor/thread-composer-trail

Conversation

@kinqsradio

Copy link
Copy Markdown
Member

Summary

  • features/thread/composer/: Composer, chips, extras, traits, model picker, effort glyph, input/markup/code-block helpers and their tests move in; Composer.tsx goes from 1,109 to 597 lines.
  • features/thread/trail/: ToolTrail.tsx goes from 876 to 261 lines; PlanRow.tsx and blocks/ (one file per renderer or small group) split out.
  • No visible change: same CSS classes, copy and keys. features/thread/index.ts exports the same names (paths only).
  • Baseline: Composer.tsx and ToolTrail.tsx leave the long-files list (13 to 11 long TS files); direction entries stay 21 (paths renamed).

Pure moves: commit 1d1268b only (listed in .git-blame-ignore-revs). Not pure moves:

  • Import-path fix commit (relative paths, vi.mock paths, baseline path rename).
  • Composer split: verbatim cuts into MentionMenu, composerConstants, suggestions, composerKeys, composerPaste, useAttachments, useStash, useStopRun, useThreadSettings. JSX pieces became components or a function with props: CodeBar, AttachmentStrip, ComposerContext, ComposerField, ComposerBar, controlsMenu. Hook calls moved out of Composer keep their effect order; plain state and selector hooks sit in other places than before. useOwnCommand stays in Composer.tsx so no new app/shortcuts baseline entry appears.
  • Trail split: renderers for each call kind became plain functions over a shared BlockContext; Block keeps its hooks. PlanRow now imported from trail/PlanRow.
  • Docs: docs/refactor.md status, file paths in docs/design-inventory.md and docs/parity.md (line numbers there are unchanged and now approximate).

Parity rows

none

Frames built

Frames built: none

Testing

  • CI covers the rest.
  • Local: npm run check, npm test (1714), npm run build, mock Playwright tool-calls, workspace, pane-resize, reading-layout (44 passed). layouts.test.tsx failed once in a full parallel run and passed alone and on rerun.
  • Not tested: packaged app, real-engine specs.

Co-authors

none

AI usage

  • Written by hand, with no AI
  • Harness and version: Claude Code 2.1.318
  • Models: claude-sonnet-5-5 (all)
  • Effort: medium
  • Human role: assigned the refactor slice and its rules; reviews and merges.
  • Sources: none

Checklist

  • Works on Windows and macOS
  • web/src/generated with any contract change; docs/architecture.md with any rule change
  • No copied source, secrets, credentials or personal data; no AI attribution in commits, title or branch

@github-actions github-actions Bot added area: web web: React UI area: docs docs and Markdown files labels Nov 9, 2026
@kinqsradio
kinqsradio merged commit 1a2e467 into main Nov 9, 2026
29 checks passed
@kinqsradio
kinqsradio deleted the refactor/thread-composer-trail branch November 9, 2026 03:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: docs docs and Markdown files area: web web: React UI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant