Promote develop → main: composer context flow, jump-backfill, icon convention#222
Merged
Conversation
Jumping from a ViewBoard history row (Activity/Audit) to a message outside the loaded window used to just toast "scroll up to load older history". Now ChannelView pages older history in (50/page, bounded at 8 pages — covers the Activity board's 200-event window) until the target appears, then focuses it; the toast only remains for messages that genuinely can't be found or shown (e.g. resolved approvals folded into the bot trace). MessageList adds one instant corrective scroll pass after the smooth scroll settles, since backfilled rows above the target materialize their real heights mid-scroll (content-visibility estimates) and drift the anchor. Verified live on the kind stack: jump to an old episode fetches one page (46→81 rows), lands the target centered in-viewport with the flash ring, no stale toast, zero console errors. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…story fix(chat): backfill older history when jumping to an unloaded message
The `+` (lucide Plus) meant six different actions across the app; on the
Workbench file panel it drew both create-file and add-to-context, so the
same glyph did two unrelated things on one surface.
Every create use of Plus is already mutually consistent (Plus = create a
new resource). The only divergent family is add-to-context, which mixed
Plus (3 sites) and Paperclip (1 site). Move it onto its own glyph:
- add-to-context → MessageSquarePlus ("add to your next message"): the
shared AttachContextButton, the suggested-context chip, the composer
"Add context" menu, and the divergent Paperclip button in
RemoteWorkspaceDialog.
- Paperclip stays reserved for "attach/upload a file" (composer, channel
files); Plus now means only "create"; FolderPlus (folder-rooted
session), UserPlus (add person), TextQuote (ranged passage) unchanged.
Documents the convention in DESIGN.md §2.18 + two anti-pattern entries so
it stops drifting.
Verified live on the kind stack: Workbench "+ New" is Plus (create), the
file-toolbar add-to-context is the message-bubble glyph, the composer's
Attach-file paperclip and Add-context button are now visibly distinct;
clicking add-to-context still adds a ContextPickBar chip. typecheck clean,
zero console errors.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
refactor(frontend): one glyph per action — disambiguate the overloaded +
… chips, session-aware model chip Three composer improvements to the context/session flow: - Add-context menu gains a "Browse & attach" section: "Workbench files…" and "Workspace files…" open the respective surface so you can pick a file to attach (each marked with ↗). Previously the menu only offered the four channel reads and told you to go find the panels yourself. - Pending context chips for a Workbench file (fs.read) or a bot's workspace file (workspace.read) get a ↗ that jumps to where the resource lives — the Workbench focused on the file, or the Remote workspace at that path. Reuses the existing wbTarget / wsInit deep-link plumbing. - The composer model chip now follows the pinned session: selecting a session narrows the chip to that session's single owning bot and shows its model (e.g. "Opus") instead of the generic "Model · 4 bots" — because a pinned session routes to exactly one bot, ignoring @mentions. SessionChip.onChange now reports the session's botId for this. Verified live on the kind stack: Browse rows open the surfaces; a review.md chip's ↗ reopens the Workbench focused on it; pinning a session flips "Model · 4 bots" → "Opus". typecheck clean, zero console errors. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…e-jump feat(composer): browse Workbench/Workspace from Add-context, jumpable chips, session-aware model chip
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Promotion: develop → main
Rolls up the frontend work merged into develop since the last promotion (3 PRs, all verified live on the kind stack, all frontend-only — no backend/migration changes):
fix(chat): jumping from a ViewBoard row to an unloaded message now backfills older history until the message is found, then focuses it (with a corrective scroll pass) — instead of toasting "scroll up to load older history."refactor(frontend): one glyph per action — disambiguates the overloaded+. Create =Plus, attach-file =Paperclip, add-to-context =MessageSquarePlus, add-person =UserPlus. Documented as DESIGN.md §2.18.feat(composer): Add-context menu gains "Browse Workbench / Workspace files…" entries; pending context chips get a ↗ jump-to-source; the model chip narrows to a pinned session's bot and shows its model.Notes
git diff develop mainis the exact inverse of the promotion diff — main is purely behind, no criss-cross).🤖 Generated with Claude Code